浮点运算可能存在误差,一定要考虑到。
eg:floor(x+0.5);
万能头文件<bits/stdc++.h>但也存在一定的缺陷,如会增加不必要的编译时间和程序大小等。
对于long long的输入输出常用C++的输入输出流或者是自定义的输入输出方法。
eg:#define ll long long
#define ll unsigned long long
计时函数clock()和time()需头文件<ctime>/<time.h>,clock_t clock(void)和time_t time(time_t* time)
clock_t为long长整型,clock返回从开启这个程序进程带程序中调用clock()函数时之间的cpu时钟计时单元数(clock tick)
time()返回从自纪元Epooh(UTC:1970-01-01 00:00:00)到当前时刻的秒速
time()的计时是人们正常常识中的秒数,而clock()的计时所表示的是占用cpu的时钟单元(tic),而sleep()并不占用cpu资源所以不计入clock()耗时
eg: diff_time = difftime(time_t time1, time_t time2); // 返回time1 和 time2之间相差的秒数
time(&time1);
time(&time2); // 前面当然要先声明 time_t time1, time2;
在<time.h>中定义了一个常量CLOCKS_PER_SEC,表示一秒钟会有多少个时钟计时单元值与操作系统相关。Windows中CLOCKS_PER_SEC为1000,Mac/Linux中为1000000
eg: (float)(clock2 - clock1)/CLOCKS_PER_SEC // 得到秒数,且需将clock_t转为float型