Submission #658887

#TimeUsernameProblemLanguageResultExecution timeMemory
658887Sohsoh84 Martian DNA (BOI18_dna)C++17
100 / 100
34 ms3884 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<ll, ll> pll; #define all(x) (x).begin(),(x).end() #define X first #define Y second #define sep ' ' #define endl '\n' #define debug(x) cerr << #x << ": " << x << endl; const ll MAXN = 1e6 + 10; int R[MAXN], n, k, r, ans = MAXN, A[MAXN]; int main() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); cin >> n >> k >> r; for (int i = 1; i <= n; i++) cin >> A[i]; for (int i = 1; i <= r; i++) { int x, y; cin >> x >> y; R[x] = y; } int p = 1; for (int i = 1; i <= n; i++) { if (R[A[i]] == 1) r--; R[A[i]]--; while (R[A[p]] < 0) R[A[p++]]++; if (r <= 0) ans = min(ans, i - p + 1); } cout << (ans == MAXN ? "impossible" : to_string(ans)) << endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...