警示
查看原帖
警示
946368
Fasdack_Y楼主2024/7/15 14:47

本题数据范围为 1≤n≤1071≤n≤10^7 所以应格外注意:

1.定义变量时应该用 longlong longlong

2.换行一定要用"\n"

cout<<endl;

会使用系统调用刷新输出缓冲区,输出大量换行时非常缓慢。(没好好看题练错了好几次还一直不知道错哪)自罚10086个耳光

如果你非要用endl的话,请使用快速读入读入数据

快读模板:

template <typename T>void read(T&x){
	int sign=1; x=0; char c;
	do{c=getchar(); if(c=='-') sign=-1;}while(!isdigit(c));
	do{x=x*10+c-'0'; c=getchar();}while(isdigit(c));
	x*=sign;
}

3.使用printfprintf和scanfscanf进行输入和输出。或者在主函数中加入加速代码断开cincin,coutcout和printfprintf,scanfscanf之间的联系,使运行速度更快。

加速代码:

std::ios::sync_with_stdio(false);
std::cin.tie(0);
std::cout.tie(0);

然后……就没了 (我写的好多)

2024/7/15 14:47
加载中...