一般來說,在c++中,cin和cout比scanf和printf慢,scanf和printf比getchar(/gets)和putchar/puts慢
當輸入/輸出範圍超過10^6個整數時,我們就需要手寫讀入/輸出優化
inline int read()
while(c>='0' && c<='9')
return x*f;
}
inline void write(int x)
while(y<=x)
while(len--)
}
還有讓cin和cout與scanf和printf差不多快的語句
ios::sync_with_stdio(false);
將上述語句加在cin/cout前面就能大大加快cin/cout的速度 輸入輸出優化
最近遇到乙個題,照我的思路差100ms才能過,於是想盡一切辦法做微小優化試圖卡過去,最後雖然過去了,但要是會優化輸入就更好了,於是學習一下這個模板備用 以下模板,具體講解參考參考文章 include include void read int x 普通版 s getchar while s 0 s ...
輸入輸出優化
code1inline int read code2inline int read code1 include using namespace std void write int x if x 9 write x 10 putchar x 10 0 code2inline void write i...
C 輸入輸出的優化
cin和cout是很方便的輸入輸出方式,比起scanf和printf,cin cout完全不需要關心變數的型別問題,反之對於string的讀入,如果使用scanf還需要先規定好這個string的大小。但在某些特定情況下,如題目的資料量比較大,而演算法的複雜度沒辦法進行更好的優化的時候,就只能把目光轉...