# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1075424 | 2024-08-26T05:56:39 Z | Muhammad_Aneeq | 송신탑 (IOI22_towers) | C++17 | 4000 ms | 8536 KB |
#include <vector> #include <algorithm> #include <cmath> using namespace std; int const MAXN=1e5+10,LG=18; int sp[MAXN][LG]={}; int n; int dp[MAXN]={}; int a[MAXN]={}; bool uni=1; int k=0; void init(int N,vector<int> H) { for (int i=0;i<N;i++) sp[i][0]=H[i],a[i]=H[i]; for (int i=1;(1<<i)<=N;i++) for (int j=0;j+(1<<i)-1<N;j++) sp[j][i]=max(sp[j][i-1],sp[j+(1<<(i-1))][i-1]); n=N; for (int i=0;i+1<n;i++) { if (a[i]<a[i+1]) continue; else { k=i; break; } } for (int i=k;i+1<n;i++) { if (a[i]>a[i+1]) continue; else { uni=0; break; } } } int get(int l,int r) { if (l>r) return -1; int lg=log2(r-l+1); return max(sp[l][lg],sp[r-(1<<lg)+1][lg]); } int max_towers(int L, int R, int D) { if (uni) { if (k>=L&&k<=R) return min(2,R-L+1); return 1; } int i=L,j=R; if (R-L+1<3) { return R-L+1; } int ans=0; for (int i=L;i<=R;i++) { dp[i]=1; for (int j=i-2;j>=L;j--) { int z=get(j+1,i-1); if (z>=max(a[i],a[j])+D) dp[i]=max(dp[i],dp[j]+1); } ans=max(ans,dp[i]); } return ans; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 259 ms | 5208 KB | 2nd lines differ - on the 1st token, expected: '1', found: '2' |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Correct | 10 ms | 344 KB | Output is correct |
3 | Correct | 6 ms | 600 KB | Output is correct |
4 | Correct | 4 ms | 600 KB | Output is correct |
5 | Correct | 5 ms | 600 KB | Output is correct |
6 | Correct | 1 ms | 600 KB | Output is correct |
7 | Correct | 4 ms | 596 KB | Output is correct |
8 | Correct | 1 ms | 344 KB | Output is correct |
9 | Correct | 1 ms | 356 KB | Output is correct |
10 | Correct | 1 ms | 344 KB | Output is correct |
11 | Correct | 2 ms | 344 KB | Output is correct |
12 | Correct | 0 ms | 344 KB | Output is correct |
13 | Correct | 0 ms | 344 KB | Output is correct |
14 | Correct | 1 ms | 344 KB | Output is correct |
15 | Correct | 1 ms | 344 KB | Output is correct |
16 | Correct | 14 ms | 600 KB | Output is correct |
17 | Correct | 2 ms | 600 KB | Output is correct |
18 | Correct | 0 ms | 344 KB | Output is correct |
19 | Correct | 2 ms | 344 KB | Output is correct |
20 | Correct | 25 ms | 608 KB | Output is correct |
21 | Correct | 25 ms | 344 KB | Output is correct |
22 | Correct | 25 ms | 600 KB | Output is correct |
23 | Incorrect | 1 ms | 344 KB | 1st lines differ - on the 1st token, expected: '1', found: '2' |
24 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Correct | 10 ms | 344 KB | Output is correct |
3 | Correct | 6 ms | 600 KB | Output is correct |
4 | Correct | 4 ms | 600 KB | Output is correct |
5 | Correct | 5 ms | 600 KB | Output is correct |
6 | Correct | 1 ms | 600 KB | Output is correct |
7 | Correct | 4 ms | 596 KB | Output is correct |
8 | Correct | 1 ms | 344 KB | Output is correct |
9 | Correct | 1 ms | 356 KB | Output is correct |
10 | Correct | 1 ms | 344 KB | Output is correct |
11 | Correct | 2 ms | 344 KB | Output is correct |
12 | Correct | 0 ms | 344 KB | Output is correct |
13 | Correct | 0 ms | 344 KB | Output is correct |
14 | Correct | 1 ms | 344 KB | Output is correct |
15 | Correct | 1 ms | 344 KB | Output is correct |
16 | Correct | 14 ms | 600 KB | Output is correct |
17 | Correct | 2 ms | 600 KB | Output is correct |
18 | Correct | 0 ms | 344 KB | Output is correct |
19 | Correct | 2 ms | 344 KB | Output is correct |
20 | Correct | 25 ms | 608 KB | Output is correct |
21 | Correct | 25 ms | 344 KB | Output is correct |
22 | Correct | 25 ms | 600 KB | Output is correct |
23 | Incorrect | 1 ms | 344 KB | 1st lines differ - on the 1st token, expected: '1', found: '2' |
24 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 4027 ms | 8536 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 4059 ms | 2392 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Correct | 10 ms | 344 KB | Output is correct |
3 | Correct | 6 ms | 600 KB | Output is correct |
4 | Correct | 4 ms | 600 KB | Output is correct |
5 | Correct | 5 ms | 600 KB | Output is correct |
6 | Correct | 1 ms | 600 KB | Output is correct |
7 | Correct | 4 ms | 596 KB | Output is correct |
8 | Correct | 1 ms | 344 KB | Output is correct |
9 | Correct | 1 ms | 356 KB | Output is correct |
10 | Correct | 1 ms | 344 KB | Output is correct |
11 | Correct | 2 ms | 344 KB | Output is correct |
12 | Correct | 0 ms | 344 KB | Output is correct |
13 | Correct | 0 ms | 344 KB | Output is correct |
14 | Correct | 1 ms | 344 KB | Output is correct |
15 | Correct | 1 ms | 344 KB | Output is correct |
16 | Correct | 14 ms | 600 KB | Output is correct |
17 | Correct | 2 ms | 600 KB | Output is correct |
18 | Correct | 0 ms | 344 KB | Output is correct |
19 | Correct | 2 ms | 344 KB | Output is correct |
20 | Correct | 25 ms | 608 KB | Output is correct |
21 | Correct | 25 ms | 344 KB | Output is correct |
22 | Correct | 25 ms | 600 KB | Output is correct |
23 | Incorrect | 1 ms | 344 KB | 1st lines differ - on the 1st token, expected: '1', found: '2' |
24 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 259 ms | 5208 KB | 2nd lines differ - on the 1st token, expected: '1', found: '2' |
2 | Halted | 0 ms | 0 KB | - |