放一个读入优化和输出优化在这里
读入优化
template<typename T>
void read(T &x){
T _=0,mul=1;
char __=getchar();
while(!isdigit(__)){
if(__=='-')mul=-1;
__=getchar();
}
while(isdigit(__))_=(_<<1)+(_<<3)+(__^'0'),__=getchar();
x=_*mul;
}
输出优化
template<typename T>
void write(T x,char c){
if(x==0){
putchar('0');
putchar(c);
return;
}
if(x<0){putchar('-');x=-x;}
T len=1,y=10;
while(y<=x)y=(y<<3)+(y<<1),++len;
while(len--){
y/=10;
putchar(x/y+48);
x%=y;
}
putchar(c);
}