コンテンツにスキップ

1.13.配列

APG4bの該当ページ

コメント

配列もめっちゃ使います。前回と同じ理由で配列 \(vec\)\(i\) 番目にアクセスしたいときは vec[i] と書くことを推奨します。

一応APG4bで出てきたことで大事なことと、注意を書いておきます。

配列の宣言

  • 配列を使いたい時(宣言する時)は vector<int> vec(N); のように書く。
    ※このように書くと全ての要素は \(0\) になる
  • vector<int> vec(N,10); と書くことで長さ \(N\) で全ての要素が \(10\) の配列が使える
  • \(N\) 個の数を受け取りたいときは
    vector<int> vec(N);
    for(int i = 0;i < N;i++)cin >> vec[i];
    //repを使った書き方
    rep(i,N)cin >> vec[i];
    

注意

APG4b内で

#define _GLIBCXX_DEBUG
というコードがあったかと思いますが、これを書き加えると著しくコードの実行速度が遅くなる可能性があります。 しかし、手元でコードを実行する分にはあまり遅さが気になることはないです。 もし上のコードを付け加える時は、代わりに
#ifndef ONLINE_JUDGE
#define _GLIBCXX_DEBUG
#endif
と書いてください。 これをすることによって、手元で実行するときは配列外参照をするとエラーを出してくれ、AtCoderにコードを提出するときはコードの実行速度が遅くなることがなくなります。 これがどのように動いているのかはここでは説明しません。興味があったら調べてみてください。

演習問題

問題をたくさん解くのだ~

余裕がある人向けの問題