一、整型快读模板
专门读取int型
getchar():将数字转化为字符读取,速度比scanf,cin都快
w:判断正负号
代码:
inline void read(int &num)
{
int s = 0, w = 1; char ch = getchar();
while(ch < '0' || ch > '9'){ if(ch == '-') w = -1; ch = getchar(); }
while(ch >= '0' && ch <= '9') s = s * 10 + ch - '0', ch = getchar();
num = s*w;
}
二、升级版快读
不会爆int!!
代码:
template <class T>
inline void (T &s){
T w = 1, ch = getchar() s = 0;
while(!isdigit(ch)){if(ch == '-') w = -1; ch = gtc();}
while(isdigit(ch)){s = s * 10 + ch - '0'; ch = gtc();}
s *= w;
}
三、字符串快读
优化字符串
inline string read(){
char ch = getchar();
string st1 = "";
while(!(ch >= 'a' && ch <= 'z')) ch = getchar();
while(ch >= 'a' && ch <= 'z') st1 += ch, ch = getchar();
return st1;
}