少し複雑めの全探索。
問題概要
1 年が ヶ月からなる暦がある。 月はそれぞれ 日ある。
この暦において、ゾロ目に日付は何日あるかを答えよ。
制約
考えたこと
について順に調べていけば良い。
- 自体がゾロ目でないとダメ
- がゾロ目なら、その数字を として、
- なら 1 加算
- なら 1 加算
というようにする。
コード
#include <bits/stdc++.h> using namespace std; int main() { int N; cin >> N; vector<int> D(N); for (int i = 0; i < N; ++i) cin >> D[i]; int res = 0; for (int m = 1; m <= N; ++m) { // m 自体がゾロ目 (m = 1, 2, ..., 9, 11, 22, ..., 99) if (m <= 9 || m % 11 == 0) { int v = m % 10; // v 日と、vv 日が候補 if (D[m-1] >= v) ++res; if (D[m-1] >= v * 11) ++res; } } cout << res << endl; }