转载快速读入的几种写法,作为首博:)
inline int read()
{
int k=0;
char f=1;
char c=getchar();
for(;!isdigit(c);c=getchar() )
if(c=='-')
f=-1;
for(;isdigit(c);c=getchar() )
k=k*10+c-'0';
return k*f;
}
inline int read(){
int k=0;char f=1,c=getchar();
while(c>'9'||c<'0'){
if(c=='-'){
f=-1;
c=getchar();
}
c=getchar();
}
while(c<='9'&&c>='0'){
k=k*10+c-'0';
c=getchar();
}
return k*f;
}
int read(){
int num=0, f=1;
char c=getchar();
while(c>'9'||c<'0'){
if(c=='-')f=-1;
c=getchar();
}
while(c>='0'&&c<='9'){
num*=10;
num+=c-'0';
c=getchar();
}
return num*f;
}
快读原理很简单。我现在已经中毒到一打代码就要写快读。。所以把我自己最常用的一个贴上去吧
inline int read(){
int k=0;char f=1,c=getchar();
for(;!isdigit(c);c=getchar())if(c=='-')f=-1;
for(;isdigit(c);c=getchar())k=k*10+c-'0';
return k*f;
}