# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
523280 | 2022-02-07T10:16:06 Z | valerikk | Minerals (JOI19_minerals) | C++17 | 1 ms | 328 KB |
#include "minerals.h" #include <iostream> #include <vector> #include <algorithm> #include <cassert> using namespace std; void Solve(int N) { int diff = 0; vector<int> a, b; int lst = 0; for (int i = 1; i <= 2 * N; ++i) { int x = Query(i); if (x != lst) { lst = x; a.push_back(i); } else { Query(i); b.push_back(i); } } for (int i : a) { lst = Query(i); } vector<int> l(N, 0), r(N, N); for (int it = 0; it < 16; ++it) { vector<int> m(N); bool ok = true; for (int i = 0; i < N; ++i) { if (r[i] - l[i] != 1) { m[i] = (l[i] + r[i]) / 2; ok = false; } } if (ok) break; vector<vector<int>> here(N + 1); for (int i = 0; i < N; ++i) { here[m[i]].push_back(i); } if (it & 1) { for (int i = N; i >= 0; --i) { for (int j : here[i]) { int x = Query(b[j]); if (x == lst) { r[j] = m[j]; } else { l[j] = m[j]; } lst = x; } if (i != 0) lst = Query(a[i - 1]); } } else { for (int i = 0; i <= N; ++i) { for (int j : here[i]) { int x = Query(b[j]); if (x == lst) { r[j] = m[j]; } else { l[j] = m[j]; } lst = x; } if (i != N) lst = Query(a[i]); } } } for (int i = 0; i < N; ++i) { Answer(a[l[i]], b[i]); } }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 0 ms | 200 KB | Wrong Answer [4] |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 328 KB | Wrong Answer [5] |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 0 ms | 200 KB | Wrong Answer [4] |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 0 ms | 200 KB | Wrong Answer [4] |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 0 ms | 200 KB | Wrong Answer [4] |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 0 ms | 200 KB | Wrong Answer [4] |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 0 ms | 200 KB | Wrong Answer [4] |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 0 ms | 200 KB | Wrong Answer [4] |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 0 ms | 200 KB | Wrong Answer [4] |
2 | Halted | 0 ms | 0 KB | - |