一些有趣又有用/没用的东西(手动滑稽)在更新

https://blog.csdn.net/qq_41289920/article/details/82344586

  • O1优化会消耗少多的编译时间,它主要对代码的分支,常量以及表达式等进行优化。 
  • O2会尝试更多的寄存器级的优化以及指令级的优化,它会在编译期间占用更多的内存和编译时间。 
  • O3在O2的基础上进行更多的优化,例如使用伪寄存器网络,普通函数的内联,以及针对循环的更多优化。 
  • Os主要是对代码大小的优化,我们基本不用做更多的关心。 通常各种优化都会打乱程序的结构,让调试工作变得无从着手。并且会打乱执行顺序,依赖内存操作顺序的程序需要做相关处理才能确保程序的正确性。  
  • -O0: 不做任何优化,这是默认的编译选项。
  • -O和-O1: 对程序做部分编译优化,对于大函数,优化编译占用稍微多的时间和相当大的内存。使用本项优化,编译器会尝试减小生成代码的尺寸,以及缩短执行时间,但并不执行需要占用大量编译时间的优化。 打开的优化选项:
  • O2优化能使程序的编译效率大大提升。
  • 从而减少程序的运行时间,达到优化的效果。

C++程序中的O2开关如下所示:

#pragma GCC optimize(2)

同理O1、O3优化只需修改括号中的数即可。
只需将这句话放到程序的开头即可打开O2优化开关。

开启O3优化:

#pragma GCC optimize(3,"Ofast","inline")

 

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 

#include

方法很简单,但危害性较大,建议不要在重要比赛中使用,否则可能让你追悔莫及。

它就是: include (windows系统中使用)

#include (Linux系统中使用)

它非常强大,可以卡住评测系统,使其永远停止不了编译你的程序。唯一的解除方法是,工作人员强行关机,重启,重测。当然,我不保证他们不会气愤地把你的成绩变成0分。请慎用此方法。

阿斯蒂芬过后加快了是什么? 

在电脑键盘上按A到L这一行,也就是:(ASDFGHJKL)。看看你会打出神马。有的人会打出这几个字。这个其实就是一个游戏。有的人打出了“阿斯蒂芬规划局快乐”“爱上对方过后就哭了”等等之类的。这个我在微博里玩过。再后来有人回帖赚分就用这几个字,打出来方便啊,敲一排就直接出来了。没什么特殊的涵义。

水贴专用(再次滑稽)

判断二进制数有多少个1

#include   
#include   
using namespace std;  
int main()  
{  
    int n, count = 0;  
    cin>>n;  
    while(n > 0)  
    {  
        count++;  
        n&=(n-1);  
    }  
    cout<

 

a^b^b=a

两个相同的数异或之后是0,任意数和0异或的结果是它本身:

判断数组中只出现一次的数

#include   
int a[10];
using namespace std;  
int main()  
{
    int n;
    cin>>n;
    for(int i=0;i>a[i];
    int temp;
    for(int i=0;i

 

你可能感兴趣的:(一些有趣又有用/没用的东西(手动滑稽)在更新)