競技プログラミング用 知識集積所

cout

最終更新:

sport_programming

- view
管理者のみ編集可


雑な説明

標準出力(ディスプレイとか)に指定内容を出力する。

正式にはstd::coutであるが、例の一行を書いておけばcoutだけ書けばよい。

基本的な記述

数値(整数)型、文字型、文字列型

int型の場合。
long long型、char型、string型も同様。
cout << x << endl;
出力後の改行が不要な場合はendlは不要。

数値(小数)型

cout << fixed << setprecision(8);
cout << result << endl;
小数点以下8桁まで出力。
fixedをしなければ、全体で8桁まで出力。

動的配列

n要素のvector<int>型で、全部改行する場合。
for (int i=0; i<n; i++) {
  cout << a.at(i) << endl;
}
全部出すなら範囲for文を使ってこんな記述でも。
for (auto i : a) {
  cout << i << endl;
}
n要素のvector<int>型で、空白区切りにして最後だけ改行する場合。
for (int i=0; i<n; i++) {
  cout << a.at(i);
  if (i!=n-1) {
    cout << " ";
  }
}
 cout << endl;

二次元配列(B問題レベル)

大きさh×wのvector<vector<int>>型の場合。
for (int i=0; i<h; i++) {
  for (int j=0; j<w; j++) {
    cout << a.at(i).at(j);
    if (i!=w-1) {
      cout << " ";
    }
  }
  cout << endl; 
}

発展的な記述

いくつもまとめて出す

cout << x << " " << y << endl;

注意点

最後に改行する

問題によっては、最後の改行がないとWAになる場合がある(APG4Bなど)。
ウィキ募集バナー