[AtCoder] ABC 151 C – Welcome to AtCoder
問題
方針
\( i \) 番目の問題を正解したかどうかという情報と \( i \) 番目の問題を初めて正解するまでに “WA" となった個数を数えれば良いです。これは、配列で管理することができます。
コード
#include <bits/stdc++.h> using namespace std; typedef long long ll; int main() { int N, M; cin >> N >> M; int p[M]; string S[M]; for (int i = 0; i < M; i++) { cin >> p[i] >> S[i]; p[i]--; } int flag[N]{}; int k[N]{}; for (int i = 0; i < M; i++) { if (flag[p[i]] == 0) { if (S[i] == "WA") { k[p[i]]++; } else { flag[p[i]] = 1; } } } int t1 = 0; int t2 = 0; for (int i = 0; i < N; i++) { if (flag[i] == 1) { t1++; t2 += k[i]; } } cout << t1 << " " << t2 << "\n"; return 0; }
ディスカッション
コメント一覧
まだ、コメントがありません