- C++
输入输出加速
- @ 2023-3-30 13:27:57
输入输出加速
直接使用 cin/cout 进行输入输出时会比较慢,数据量较大时会比较耗时。因此在输入输出数据量特别大时,很多题目需要用更快的输入输出方式。
方法 1
头文件加入 #include <cstdio>,然后仅使用 scanf、printf 进行输入输出。
方法 2
在 main() 函数的开始加入两行代码。这两行代码可以关闭输入输出流同步,解除 cin、cout 绑定。
...
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
...
}
然后仅使用cin、cout进行输入输出,且所有换行使用 '\n' ,不使用 endl 即可。
如果再搭配上文件输入输出,则 main() 函数的开始可以这样写:
...
int main(){
freopen("输入文件名", "r", stdin);
freopen("输出文件名", "w", stdout);
ios::sync_with_stdio(false);
cin.tie(0);
...
}
注意:此时千万不要手动进行 fclose() 操作,否则你的输出可能都不会出现在输出文件中!!!
如果非常想要加上 fclose(),请务必保证最后有进行一次缓冲区的输出
方法 3
使用 getchar() 自行解析,俗称快读,时间效率最高。不展开说明,有兴趣可自行阅读
0 条评论
目前还没有评论...