sync_with_stdio和cin.tie(0)。cout.tie(0)。

sync_with_stdio

この機能は、プログラムが使用することを保証するために、Cとの互換性のために、「互換性のstdio」スイッチ、C ++でのstd :: printf関数とstd :: coutの混乱が発生したときに、出力ストリームを束ね。

アプリケーション

ACM、TLEのCIN状況を結果として、多くの場合、大規模なデータセットで。この時点で(また、元のIを含む)ほとんどの人は、それがさらにアップ愚かな引数効率レベルのC言語やC ++言語に、間違ったCINのscanfよりも効率だと思います。実際には、上述したように、これは互換性のためだけのC ++で保守的な措置をとります。我々はアンバインドしますIOをはstdioする前に、同時に、そうした後のようにCOUTとのprintfを混在しないように注意してください。

デフォルトのバインディングの場合はCIN、COUTは、フラッシュを呼び出す必要があり、すべての実行<<演算子は、これはIOの負担が増加します。あなたは、タイ(0)によってアンバインドCINとCOUT(0はNULLを表す)ことができ、さらに効率の実現を加速します。

 

イオス:: sync_with_stdio();
cin.tie(0 )。
cout.tie(0)。

 

オリジナルとCIN、低効率のためのcoutの理由、バッファに出力すべき最初の事ので、その後、出力、減少した効率が得られますが、この文は、バッファがiostreamの入力と出力を払拭するために使用することができ、あなたは多くの時間を節約することができ、それにより効率ほぼ同じとのprintfやscanf。

参考資料:

おすすめ

転載: www.cnblogs.com/xwh-blogs/p/12602671.html