# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
169983 | 2019-12-23T13:56:02 Z | mhy908 | Global Warming (CEOI18_glo) | C++14 | 72 ms | 9832 KB |
#include <bits/stdc++.h> #define pb push_back #define mp make_pair #define F first #define S second using namespace std; typedef long long LL; typedef pair<int, int> pii; typedef pair<LL, LL> pll; const LL llinf=9000000000000000000; const int inf=2000000000; int n; LL x, arr[200010]; vector<LL> lis, lds; int dplis[200010], dplds[200010], ans; LL maxlis[200010], minlds[200010]; int main() { scanf("%d %lld", &n, &x); for(int i=1; i<=n; i++)scanf("%d", &arr[i]); for(int i=1; i<=n; i++){ auto it=lower_bound(lis.begin(), lis.end(), arr[i]); if(it==lis.end())lis.pb(arr[i]); else *it=arr[i]; dplis[i]=lis.size(); maxlis[i]=lis[dplis[i]-1]; } for(int i=n; i>=1; i--){ auto it=lower_bound(lds.begin(), lds.end(), -arr[i]); if(it==lds.end())lds.pb(-arr[i]); else *it=-arr[i]; dplds[i]=lds.size(); minlds[i]=-lds[dplds[i]-1]; } ans=max(dplis[n], dplds[1]); for(int i=1; i<n; i++){ if(maxlis[i]-minlds[i+1]<=x)ans=max(ans, dplis[i]+dplds[i+1]); } printf("%d", ans); }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
2 | Correct | 2 ms | 376 KB | Output is correct |
3 | Incorrect | 2 ms | 376 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
2 | Correct | 2 ms | 376 KB | Output is correct |
3 | Incorrect | 2 ms | 376 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
2 | Correct | 2 ms | 376 KB | Output is correct |
3 | Incorrect | 2 ms | 376 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 70 ms | 8596 KB | Output is correct |
2 | Correct | 69 ms | 8544 KB | Output is correct |
3 | Correct | 70 ms | 8568 KB | Output is correct |
4 | Correct | 70 ms | 8560 KB | Output is correct |
5 | Incorrect | 48 ms | 9380 KB | Output isn't correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 18 ms | 2424 KB | Output is correct |
2 | Correct | 18 ms | 2424 KB | Output is correct |
3 | Correct | 18 ms | 2448 KB | Output is correct |
4 | Correct | 13 ms | 2772 KB | Output is correct |
5 | Correct | 2 ms | 376 KB | Output is correct |
6 | Correct | 13 ms | 2800 KB | Output is correct |
7 | Incorrect | 16 ms | 2424 KB | Output isn't correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 35 ms | 4472 KB | Output is correct |
2 | Correct | 35 ms | 4500 KB | Output is correct |
3 | Correct | 72 ms | 8596 KB | Output is correct |
4 | Correct | 48 ms | 9452 KB | Output is correct |
5 | Correct | 25 ms | 4976 KB | Output is correct |
6 | Correct | 43 ms | 9424 KB | Output is correct |
7 | Correct | 47 ms | 9832 KB | Output is correct |
8 | Correct | 31 ms | 4472 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
2 | Correct | 2 ms | 376 KB | Output is correct |
3 | Incorrect | 2 ms | 376 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |