[AtCoder] HHKB プログラミングコンテスト 2020 C – Neq Min
問題
方針
まず初めに仮の最小値 \( d \) を \( d = 0 \) とします。\( i \) 番目の最小値は、\( d \) が \( p_1, \cdots, p_i \) のいずれとも一致しなければ良いので、一致しなくなるまで \( d \) をインクリメントします。一致するかどうはセットを用いて調べます。
コード
#include <bits/stdc++.h> using namespace std; typedef long long ll; int main() { int N; cin >> N; int p[N]; set<int> s; for (int i = 0; i < N; i++) { cin >> p[i]; } int best = 0; for (int i = 0; i < N; i++) { s.insert(p[i]); while (s.count(best)) { best++; } cout << best << "\n"; } return 0; }
ディスカッション
コメント一覧
まだ、コメントがありません