# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
158539 | 2019-10-17T16:37:20 Z | luciocf | Lightning Conductor (POI11_pio) | C++14 | 162 ms | 15348 KB |
#include <bits/stdc++.h> using namespace std; const int maxn = 5e5+10; int n; int h[maxn]; int L[maxn], R[maxn]; void get_candidates(void) { int last = 0; for (int i = 1; i <= n; i++) { if (h[i] <= last) continue; last = h[i]; for (int d = 1; i + (d-1)*(d-1) + 1 <= n; d++) { int p = i + (d-1)*(d-1) + 1; L[p] = max(L[p], h[i]+d); } } last = 0; for (int i = n; i >= 1; i--) { if (h[i] <= last) continue; last = h[i]; for (int d = 1; i - (d-1)*(d-1) - 1 > 0; d++) { int p = i - (d-1)*(d-1) - 1; R[p] = max(R[p], h[i]+d); } } } int main(void) { scanf("%d", &n); for (int i = 1; i <= n; i++) scanf("%d", &h[i]); get_candidates(); for (int i = 1; i <= n; i++) L[i] = max(L[i-1], L[i]); for (int i = n; i >= 1; i--) R[i] = max(R[i+1], R[i]); for (int i = 1; i <= n; i++) printf("%d\n", max(0, max(R[i], L[i])-h[i])); }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 12 ms | 1272 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 18 ms | 1916 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 20 ms | 2040 KB | Output is correct |
2 | Incorrect | 14 ms | 1428 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 30 ms | 2844 KB | Output is correct |
2 | Correct | 27 ms | 2840 KB | Output is correct |
3 | Correct | 31 ms | 3064 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 66 ms | 6364 KB | Output is correct |
2 | Correct | 58 ms | 6008 KB | Output is correct |
3 | Correct | 62 ms | 6008 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 115 ms | 11256 KB | Output is correct |
2 | Correct | 92 ms | 9336 KB | Output is correct |
3 | Correct | 100 ms | 10020 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 162 ms | 15348 KB | Output is correct |
2 | Correct | 133 ms | 13176 KB | Output is correct |
3 | Correct | 151 ms | 14072 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 147 ms | 13008 KB | Output is correct |
2 | Correct | 129 ms | 13108 KB | Output is correct |
3 | Correct | 146 ms | 14072 KB | Output is correct |