总结一下C++刷题过程中的小技巧
一、关于读写方面
如果在刷题时需要自己输入和输出数据,可以考虑以下方面
1.养成使用快读和快写的习惯,因为快读依赖于getchar()函数,而getchar比scanf和cin有更快的速度,所以使用快读和快些会进一步加快代码速度 (快读快写可以直接在网上找模板,直接在网上搜C++快读快写)
2.scanf() 比 cin 有更快的读入速度 有一些题cin过不了而scanf更快 如果不喜欢用快读也要尽量用scanf函数
二、关于变量定义和数组定义
定义位置
无论是数组还是变量尽量定义在int main()上方。
#include <bits/stdc++.h> //万能头
using namespace std;
// 定义在这个位置
int main(){
}
一方面方便定义的方法可以直接操作数组或者变量
另一方面如果数组定义在int main中,当数组开太大时会爆掉,因为定义在main中相当于局部变量,会开在栈上,开太大会导致爆栈。
变量定义
1.关于一些数值类型变量的定义,尽量在定义之前估计出最大值,如果无法估计出最大值是多少,而这时代码提交上去还有出错的情况时,可以考虑开为long long再试一次。
数组长度
2.在开数组时,尽量多开一点,例如需要接受