제출 #1254785

#제출 시각아이디문제언어결과실행 시간메모리
1254785LeonaRaging Martian DNA (BOI18_dna)C++20
100 / 100
22 ms4676 KiB
#include<bits/stdc++.h> using namespace std; #define int long long #define db(val) "[" #val " = " << (val) << "] " const int maxn = 2e5 + 4; const int INF = 1e9; int n, k, r, a[maxn], cnt[maxn], req[maxn]; signed main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> n >> k >> r; for (int i = 1; i <= n; i++) cin >> a[i]; for (int i = 1, x, val; i <= r; i++) { cin >> x >> val; req[x] = val; } int j = 0, cur = 0, res = INF; for (int i = 1; i <= n; i++) { while (j + 1 <= n && cur < r) { j++; cnt[a[j]]++; if (cnt[a[j]] == req[a[j]]) cur++; } if (cur == r) res = min(res, j - i + 1); if (cnt[a[i]] == req[a[i]]) cur--; cnt[a[i]]--; }; if (res == INF) cout << "impossible"; else cout << res; cout << '\n'; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...