首页 > 其他分享 >【模板】缺省源

【模板】缺省源

时间:2024-11-03 14:58:29浏览次数:3  
标签:GCC res 缺省 pragma inline 优化 optimize 模板

Debug

inline void debug() { cerr << '\n'; }
template<typename Type, typename... Other>
inline void debug(const Type& x, const Other&... y) { cerr << x << ' '; debug(y...); }
#define DEBUG(a...) cerr << "[" << #a << "] = ", debug(a);

Read In

template<typename Type>
inline void read(Type &res)
{
    res = 0;
    int ch = getchar(), flag = 0;
    while (!isdigit(ch)) flag |= ch == '-', ch = getchar();
    while (isdigit(ch)) res = (res << 3) + (res << 1) + (ch ^ 48), ch = getchar();
    res = flag ? -res : res;
}
template<typename Type, typename... Other>
inline void read(Type &res, Other&... y) { read(res), read(y...); }

Base Template

#include <bits/stdc++.h>

using namespace std;

// #define int long long
// #define x first
// #define y second
#define File(a) freopen(a".in", "r", stdin), freopen(a".out", "w", stdout)

inline void debug() { cerr << '\n'; }
template<typename Type, typename... Other>
inline void debug(const Type& x, const Other&... y) { cerr << x << ' '; debug(y...); }
#define DEBUG(a...) cerr << "[" << #a << "] = ", debug(a);

typedef long long LL;
typedef pair<int, int> PII;

const int N = 200010;
const int INF = 0x3f3f3f3f;

template<typename Type>
inline void read(Type &res)
{
    res = 0;
    int ch = getchar(), flag = 0;
    while (!isdigit(ch)) flag |= ch == '-', ch = getchar();
    while (isdigit(ch)) res = (res << 3) + (res << 1) + (ch ^ 48), ch = getchar();
    res = flag ? -res : res;
}
template<typename Type, typename... Other>
inline void read(Type &res, Other&... y) { read(res), read(y...); }



signed main()
{
    
    return 0;
}

GCC Optimize

#pragma GCC target("avx")               // AVX指令集(不懂的去问度娘)
#pragma GCC optimize(1)                 // o1优化
#pragma GCC optimize(2)                 // o2优化
#pragma GCC optimize(3)                 // o3优化
#pragma GCC optimize("Ofast")           // ofast优化(优化到破坏标准合规性的点),
#pragma GCC optimize("inline")          // inline中和
#pragma GCC optimize("-fgcse")          // fgcse优化
#pragma GCC optimize("-fgcse-lm")       //-fgcse-lm
#pragma GCC optimize("-fipa-sra")       //除换
#pragma GCC optimize("-ftree-pre")      //快速tree
#pragma GCC optimize("-ftree-vrp")      //去重tree
#pragma GCC optimize("-fpeephole2")     // flatco2优化
#pragma GCC optimize("-ffast-math")     //数论优化
#pragma GCC optimize("-fsched-spec")    //富硒优化
#pragma GCC optimize("unroll-loops")    //图论plus优化
#pragma GCC optimize("-falign-jumps")   //极优化
#pragma GCC optimize("-falign-loops")   //图论重+排除
#pragma GCC optimize("-falign-labels")  // lamb优化
#pragma GCC optimize("-fdevirtualize")  // fugechar优化
#pragma GCC optimize("-fcaller-saves")  //负优化排除
#pragma GCC optimize("-fcrossjumping")  //极优化p+
#pragma GCC optimize("-fthread-jumps")  //多重极优化
#pragma GCC optimize("-funroll-loops")  //消除分支可以减少预测的可能性能:比如小的循环可以展开比如循环次数小于64次(可以使用GCC选项 //-funroll-loops)
#pragma GCC optimize("-fwhole-program")    //弗洛伊德优化
#pragma GCC optimize("-freorder-blocks")   //半刻优化
#pragma GCC optimize("-fschedule-insns")   // fschedule-insns优化
#pragma GCC optimize("inline-functions")   // inline-functions优化
#pragma GCC optimize("-ftree-tail-merge")  //-ftree-tail-merge优化
#pragma GCC optimize("-fschedule-insns2")  //-fschedule-insns2优化
#pragma GCC optimize("-fstrict-aliasing")  //-fstrict-aliasing优化
#pragma GCC optimize("-fstrict-overflow")  //不知道
#pragma GCC optimize("-falign-functions")
#pragma GCC optimize("-fcse-skip-blocks")
#pragma GCC optimize("-fcse-follow-jumps")
#pragma GCC optimize("-fsched-interblock")
#pragma GCC optimize("-fpartial-inlining")
#pragma GCC optimize("no-stack-protector")
#pragma GCC optimize("-freorder-functions")
#pragma GCC optimize("-findirect-inlining")
#pragma GCC optimize("-fhoist-adjacent-loads")
#pragma GCC optimize("-frerun-cse-after-loop")
#pragma GCC optimize("inline-small-functions")
#pragma GCC optimize("-finline-small-functions")
#pragma GCC optimize("-ftree-switch-conversion")
#pragma GCC optimize("-foptimize-sibling-calls")
#pragma GCC optimize("-fexpensive-optimizations")
#pragma GCC optimize("-funsafe-loop-optimizations")
#pragma GCC optimize("inline-functions-called-once")
#pragma GCC optimize("-fdelete-null-pointer-checks")

update on 2024.10.25.

标签:GCC,res,缺省,pragma,inline,优化,optimize,模板
From: https://www.cnblogs.com/ThySecret/p/18523432

相关文章

  • 【模板】手写基本数据结构
    栈STL模板STL中的stack容器提供了一众成员函数以供调用,常见的包括但不限于如下:创建一个栈:stack<int>stk;修改元素:stk.push(x);将传入的参数插入到栈顶。stk.pop();将栈顶的元素弹出。查询:stk.top();返回栈顶的元素。stk.empty();返回栈是否为空。stk.size......
  • 【模板】素数筛
    模板原题1.寻找因数筛法时间复杂度:\(O(n\sqrtn)\)核心模板代码如下:boolisprime(intn){ if(n<2)returnfalse; //0和1都不是 for(inti=2;i*i<=n;++i) if(n%i==0)returnfalse; //有1和它本身以外的其他因子就不是素数了 returntrue;}2.埃......
  • floyed算法模板
    #include<bits/stdc++.h>#include<vector>usingnamespacestd;intlj[1010][1010];//邻接矩阵//可以换成链式前向星之类的巴拉巴拉,这里用邻接矩阵演示比较清楚intn,m;intflyd[1001][1001];intmain(){ cin>>n>>m; for(inti=1;i<=m;i++){ intu,v,w; cin>>u>>......
  • C++模板元编程 实测
    本文记录在各平台(g++、msvc)中实测《C++模板元编程实战:一个深度学习框架的初步实现》中代码的过程。1.3.2节,作者给出了这一段代码:`templatestructWrapper{templatestructFun_{constexprstaticsize_tvalue=0;};template<>structFun_<int>{constexprst......
  • ElasticSearch7.6.x 模板及滚动索引创建及注意事项
    @目录声明:举例说明创建模板+设置滚动索引+读写判断模板是否存在创建模板应用模板创建索引设置滚动索引添加文档,使用“写”别名查询,使用“读”别名本人先关其他文章链接声明:注意点1:滚动索引是设置索引,而非创建索引,且设置一次结果返回"rolled_over":true,则会按照设定规则创建......
  • 随便写的一点BinTree模板实现
    `#pragmawarning(disable:4996)includeincludeincludeincludetemplatestructBinNode{int_depth;//节点深度int_height;//节点高度T_data;//存储的数据BinNode*_parent;//父节点BinNode*_lChild;//左子节点BinNode*......
  • 常用算法模板
    快速排序defquick_sort(arr):iflen(arr)<=1:#基本情况:如果数组为空或只有一个元素,则返回returnarrelse:pivot=arr[0]#选择基准值(可以选择第一个元素)less_than_pivot=[xforxinarr[1:]ifx<=pivot]#小于等于基准值......
  • 【ChatGPT】让ChatGPT根据固定模板生成报告或文档
    让ChatGPT根据固定模板生成报告或文档在撰写报告或文档时,使用固定模板可以确保内容的统一性和结构的清晰性。利用ChatGPT生成符合特定模板的报告,不仅提高了工作效率,还能确保信息的准确传达。本文将探讨如何设计固定模板并引导ChatGPT生成相应的内容。一、明确报告的目的与......
  • RTX5/FreeRTOS全家桶源码工程综合实战模板集成CANopen组件(2024-10-30)
    【前言】之前的视频教程分享了两期CANopen的专题,配套的例子都是基于裸机的,为了方便大家在OS下使用,本期视频带OS下的支持。CANopen协议栈专题,实战方式系统了解NMT,PDO,SDO,时间戳,同步报文,紧急报文等(2023-10-17)https://www.armbbs.cn/forum.php?mod=viewthread&tid=121438CANopen......
  • 洛谷题单指南-字符串-P3369 【模板】普通平衡树
    原题链接:https://www.luogu.com.cn/problem/P3369题意解读:平衡树的基本操作,模版题。解题思路:1、二叉搜索树-BST二叉搜索树满足这样的性质:每一个节点的权值大于它的左儿子,小于它的右儿子。对BST进行中序遍历,将得到一个从小到大的有序序列,因此BST是为了维护一个有序序列的动态......