# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
659844 | 2022-11-19T12:07:59 Z | 600Mihnea | Event Hopping (BOI22_events) | C++17 | 1500 ms | 2644 KB |
bool home = 0; #include <bits/stdc++.h> using namespace std; typedef long long ll; const int N = (int) 1e5 + 7; int n; int q; struct T { int l; int r; int init; }; bool operator < (T a, T b) { if (a.r != b.r) { return a.r < b.r; } else { return a.l < b.l; } } T v[N]; int dp[N]; int nxt[N]; int ant[N]; int inv[N]; int low[N]; int high[N]; int cnt_rs_under(int limit) { int low = 1, high = n, cnt = 0; while (low <= high) { int mid = (low + high) / 2; if (v[mid].r <= limit) { cnt = mid; low = mid + 1; } else { high = mid - 1; } } return cnt; } int main() { if (!home) { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); } else { freopen("input.txt", "r", stdin); } cin >> n >> q; for (int i = 1; i <= n; i++) { cin >> v[i].l >> v[i].r; v[i].init = i; } sort(v + 1, v + n + 1); for (int i = 1; i <= n; i++) { int x = cnt_rs_under(v[i].l - 1) + 1; int y = cnt_rs_under(v[i].r); low[i] = x; high[i] = y; } for (int i = 1; i <= n; i++) { inv[v[i].init] = i; } for (int iq = 1; iq <= q; iq++) { int ff, ss; cin >> ff >> ss; ff = inv[ff]; ss = inv[ss]; int L = ss, R = ss, cost = 0; while (L > ff) { int L2 = L, R2 = R; for (int j = L; j <= R; j++) { L2 = min(L2, low[j]); R2 = max(R2, high[j]); } if (L2 == L && R2 == R) { break; } L = L2; R = R2; cost++; } if (!(L <= ff && ff <= R)) { cout << "impossible\n"; } else { cout << cost << "\n"; } } return 0; } /** **/
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | Output is correct |
2 | Execution timed out | 1588 ms | 2644 KB | Time limit exceeded |
3 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 340 KB | Output is correct |
2 | Correct | 0 ms | 340 KB | Output is correct |
3 | Correct | 57 ms | 340 KB | Output is correct |
4 | Correct | 3 ms | 340 KB | Output is correct |
5 | Correct | 6 ms | 340 KB | Output is correct |
6 | Correct | 1 ms | 340 KB | Output is correct |
7 | Correct | 1 ms | 340 KB | Output is correct |
8 | Correct | 1 ms | 340 KB | Output is correct |
9 | Correct | 1 ms | 340 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 340 KB | Output is correct |
2 | Correct | 0 ms | 340 KB | Output is correct |
3 | Correct | 57 ms | 340 KB | Output is correct |
4 | Correct | 3 ms | 340 KB | Output is correct |
5 | Correct | 6 ms | 340 KB | Output is correct |
6 | Correct | 1 ms | 340 KB | Output is correct |
7 | Correct | 1 ms | 340 KB | Output is correct |
8 | Correct | 1 ms | 340 KB | Output is correct |
9 | Correct | 1 ms | 340 KB | Output is correct |
10 | Correct | 0 ms | 340 KB | Output is correct |
11 | Correct | 1 ms | 340 KB | Output is correct |
12 | Correct | 62 ms | 340 KB | Output is correct |
13 | Correct | 2 ms | 340 KB | Output is correct |
14 | Correct | 6 ms | 340 KB | Output is correct |
15 | Correct | 1 ms | 340 KB | Output is correct |
16 | Correct | 1 ms | 340 KB | Output is correct |
17 | Correct | 1 ms | 340 KB | Output is correct |
18 | Correct | 1 ms | 340 KB | Output is correct |
19 | Execution timed out | 1565 ms | 340 KB | Time limit exceeded |
20 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 340 KB | Output is correct |
2 | Correct | 0 ms | 340 KB | Output is correct |
3 | Correct | 57 ms | 340 KB | Output is correct |
4 | Correct | 3 ms | 340 KB | Output is correct |
5 | Correct | 6 ms | 340 KB | Output is correct |
6 | Correct | 1 ms | 340 KB | Output is correct |
7 | Correct | 1 ms | 340 KB | Output is correct |
8 | Correct | 1 ms | 340 KB | Output is correct |
9 | Correct | 1 ms | 340 KB | Output is correct |
10 | Correct | 1 ms | 212 KB | Output is correct |
11 | Correct | 1 ms | 456 KB | Output is correct |
12 | Correct | 57 ms | 348 KB | Output is correct |
13 | Correct | 3 ms | 340 KB | Output is correct |
14 | Correct | 5 ms | 340 KB | Output is correct |
15 | Correct | 1 ms | 340 KB | Output is correct |
16 | Correct | 1 ms | 340 KB | Output is correct |
17 | Correct | 1 ms | 340 KB | Output is correct |
18 | Correct | 1 ms | 340 KB | Output is correct |
19 | Execution timed out | 1592 ms | 2572 KB | Time limit exceeded |
20 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1554 ms | 2636 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | Output is correct |
2 | Execution timed out | 1588 ms | 2644 KB | Time limit exceeded |
3 | Halted | 0 ms | 0 KB | - |