char buf[1000005],*p1,*p2,c;
#define gc (p1==p2&&(p2=(p1=buf)+fread(buf,1,1<<22,stdin),p1==p2))?EOF:*p1++
inline int read(){
int an=0,f=1;while(!isdigit(c=gc))if(c=='-')f=-f;
do an=(an<<3)+(an<<1)+(c^'0');while(isdigit(c=gc));
return an*f;
}
为什么这样之后 n = read() 在本地编译之后无法读入东西