- 关于读入:
- 把输入全部当成字符串读入,然后自己再转换类型会更快
- 取消cin与stdin的同步,取消之后cin和scanf的效率相差无几
- 使用getchar()会更快
- 关于输出
- 输出字符串会比一个一个输出更快
- 在c++17之后,使用to_chars把数字转换成字符串会快很多
如果是对应的文件读取与写入的的话,使用配套的fread()、fwrite()、freope()即可。
C++ 流是否与标准 C 流在每次输入/输出操作后同步:
std::ios_base::sync_with_stdio
sync_with_stdio(false)为取消同步,不推荐使用
int read(){//IO优化
int x=0,f=1;
char c=getchar();
while(c<'0'||c>'9'){
if(c=='-') f=-1;
c=getchar();
}
while(c>='0'&&c<='9'){
x=x*10+c-'0';
c=getchar();
}
return x*f;
}
//gets为读取一个字符串,方法有很多