C++常見的讀入方式有兩種:spa
cin>>a
與code
scanf(「%d」,&a)
可是當遇到一些毒瘤題很是卡時間或者想裝逼的時候,上面兩種方式就不夠快了。這時候就是快讀大顯身手的時候。blog
衆所周知C++中讀入速度getchar>scanf>cin,因而咱們就單個字符單個字符的讀入。ci
int read(){ int x=0,f=1; char ch=getchar(); while(ch<'0' || ch>'9'){ if(ch=='-') f=-1;ch=getchar();}//讀取正負號 while(ch>='0' && ch<='9'){x=(x<<3)+(x<<1)+ch-'0';ch=getchar();}//x<<3=x*8,x<<1=x*2,合起來即是x*10了 return x*f; } a=read();
可是若是碰到了某些毒瘤數據,有大量空格,仍是不要用快讀較好get