問題
問題文
AtCoder Beginner Contest は、今回で $214$ 回目の開催となりました。
今までの AtCoder Beginner Contest において、出題される問題数は次のように変化しました。
・$1$ 回目から $125$ 回目までは $4$ 問
・$126$ 回目から $211$ 回目までは $6$ 問
・$212$ 回目から $214$ 回目までは $8$ 問
$N$ 回目の AtCoder Beginner Contest において出題された問題数を求めてください。
制約
・$1 \le N \le 214$
・入力は全て整数である。
回答
回答1 (AC)
問題文に沿ってコードにしていけば良いでしょう。問題文そのままだと最初の if 文の条件は「1<=n && n<=125」となりますが、制約より「1<=n」であることが保証されているので、「n<=125」だけで十分です。同様に、問題文そのままだと 2 つ目の if 文の条件は「126<=n && n<=211」となりますが、この条件を判断している時点で最初の if 文の条件は成立していない、つまり「n<=125」は成立していないので、「126<=n」であることは確定しています。従って、2つ目の if 文の条件は「n<=211」だけで十分です。
#include <bits/stdc++.h>
using namespace std;
int main() {
int n;
cin >> n;
if ( n<=125 ) {
cout << 4 << endl;
} else if ( n<=211 ) {
cout << 6 << endl;
} else {
cout << 8 << endl;
}
}
調べたこと
AtCoder の解説 → 公式解説
回答1と同じ方針でした。
リンク
前後の記事
- 前の記事 → AtCoderログ:0080 - ABC 088 C