競プロ用出入力メモ
参考
c++ - Significance of ios_base::sync_with_stdio(false); cin.tie(NULL); - Stack Overflow
iostream
#include <iomanip> #include <iostream> #include <string> using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(0); int N; cin >> N; cout << N << "\n"; double x; cin >> x; cout << fixed << setprecision(10) << x << "\n"; string s; cin >> s; cout << s << endl; }
- 遅いが、出入力の行数が少ない場合には十分
- 型を自動判別してくれるため楽
- 小数点以下の桁数を指定する場合、iomanipをincludeしてfixed << setprecision()
- 速度を気にする場合
- endlではなく改行文字\nの方が速い
- mainはじめの二行を追加すると高速化できる場合がある
- sync_with_stdio(false)を使用した場合stdioを使用してはいけない
- cin.tie(0)はcinとcoutの連携を切ってしまい、出力が出る前に次の入力が行われる危険がある。競プロの形式では問題ないはず