답안 #1013786

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1013786 2024-07-04T05:51:43 Z Muaath_5 Martian DNA (BOI18_dna) C++17
0 / 100
19 ms 2772 KB
#include <bits/stdc++.h>
#define ll long long
#define pii pair<int, int>
using namespace std;

const int N = 2e5+1, INF = 1e9;

int n, k, rr;
int a[N];
int q[N];

int cur[N];

int main()
{
  ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
  cin >> n >> k >> rr;
  for (int i = 1; i <= n; cin >> a[i++]);
  for (int i = 1, b; i <= rr; i++) {
    cin >> b;
    cin >> q[b];
  }
  int sat = (q[a[1]] && ++cur[a[1]] == q[a[1]]);
  int l = 1, r = 1;
  int sol = INF;
  while (r <= n) {
    //cerr << l << ' ' << r << endl;
    if (sat == rr && l < r) {
      sol = min(sol, r-l+1);
      cur[a[l]]--;
      if (q[a[l]] && cur[a[l]] == q[a[l]]-1) sat--;
      l++;
    } else {
      r++;
      cur[a[r]]++;
      if (q[a[r]] && cur[a[r]] == q[a[r]]) sat++;
    }
  }
  while (l <= n && sat == rr) {
    sol = min(sol, r-l+1);
    if (q[a[l]] && cur[a[l]] == q[a[l]]) break;
    cur[a[l]]--;
    l++;
  }
  cout << (sol == INF ? "impossible" : to_string(sol));
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 2392 KB Output is correct
2 Correct 0 ms 2396 KB Output is correct
3 Correct 0 ms 2396 KB Output is correct
4 Correct 0 ms 2392 KB Output is correct
5 Correct 1 ms 2396 KB Output is correct
6 Incorrect 1 ms 2648 KB Output isn't correct
7 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 2392 KB Output is correct
2 Correct 1 ms 2396 KB Output is correct
3 Correct 1 ms 2396 KB Output is correct
4 Correct 0 ms 2396 KB Output is correct
5 Correct 0 ms 2396 KB Output is correct
6 Correct 0 ms 2396 KB Output is correct
7 Correct 0 ms 2396 KB Output is correct
8 Correct 0 ms 2396 KB Output is correct
9 Correct 0 ms 2508 KB Output is correct
10 Correct 0 ms 2396 KB Output is correct
11 Correct 1 ms 2396 KB Output is correct
12 Incorrect 1 ms 2396 KB Output isn't correct
13 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 8 ms 2396 KB Output is correct
2 Correct 8 ms 2396 KB Output is correct
3 Correct 8 ms 2396 KB Output is correct
4 Correct 7 ms 2592 KB Output is correct
5 Correct 9 ms 2652 KB Output is correct
6 Correct 6 ms 2396 KB Output is correct
7 Correct 10 ms 2396 KB Output is correct
8 Correct 11 ms 2772 KB Output is correct
9 Correct 9 ms 2652 KB Output is correct
10 Correct 8 ms 2396 KB Output is correct
11 Correct 0 ms 2396 KB Output is correct
12 Correct 1 ms 2396 KB Output is correct
13 Correct 0 ms 2396 KB Output is correct
14 Correct 1 ms 2396 KB Output is correct
15 Correct 1 ms 2396 KB Output is correct
16 Correct 0 ms 2396 KB Output is correct
17 Correct 0 ms 2396 KB Output is correct
18 Correct 1 ms 2396 KB Output is correct
19 Correct 0 ms 2396 KB Output is correct
20 Correct 1 ms 2396 KB Output is correct
21 Correct 0 ms 2396 KB Output is correct
22 Incorrect 0 ms 2396 KB Output isn't correct
23 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 19 ms 2652 KB Output is correct
2 Correct 15 ms 2648 KB Output is correct
3 Correct 12 ms 2652 KB Output is correct
4 Incorrect 7 ms 2516 KB Output isn't correct
5 Halted 0 ms 0 KB -