# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
714845 | 2023-03-25T10:44:38 Z | BidoTeima | 지구 온난화 (NOI13_gw) | C++17 | 939 ms | 65536 KB |
/* ID: BidoTeima LANG: C++11 TASK: */ #include <bits/stdc++.h> using namespace std; using ll = long long; void moo(string filename); void ACPLS(string str = "") { if(str=="NOF")return; if(str.size() && str != "IIOT") moo(str); else if(str != "IIOT"){ #ifndef ONLINE_JUDGE freopen("output.txt", "w", stdout); freopen("input.txt", "r", stdin); #endif } ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); } void moo(string fileName){ freopen((fileName+".in").c_str(),"r",stdin); freopen((fileName+".out").c_str(),"w",stdout); } #define tcccc \ int tttttt/*,subtask*/; \ cin >> tttttt/* >> subtask*/; \ while (tttttt--)/*end */ int main() { //ACPLS(""); int n; cin>>n; n += 2; int a[n], cur = 0; a[0] = 0; for(int i = 1; i < n - 1; i++){ cin>>a[i]; } a[n - 1] = 0; vector<int>c; for(int i = 0; i < n; i++){ if(i && a[i] == a[i - 1])continue; c.push_back(a[i]); } n = (int)c.size(); vector<int>mp[n]; int sorted[n]; copy(c.begin(),c.end(),sorted); sort(sorted,sorted+n); // mp[i] has all occurences of sorted[i] for(int i = 0; i < n; i++){ int idx = lower_bound(sorted,sorted+n,c[i]) - sorted; mp[idx].push_back(i); c[i] = idx; } int ans = 0; bool nextIsIsland = 0; for(int i = 0; i < n; i++){ if(c[i] == 0)nextIsIsland = 1; else{ cur += nextIsIsland; nextIsIsland = 0; } } ans=max(ans,cur); for(int j = 1; j < n; j++){ vector<int>&v = mp[j]; for(int i = 0; i < (int)v.size(); i++){ int val = (c[v[i] - 1] < j) + (c[v[i] + 1] < j); if(val == 0){ cur++; } else if(val == 2){ cur--; } } ans = max(ans, cur); } cout<<ans<<'\n'; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 340 KB | Output is correct |
2 | Correct | 1 ms | 300 KB | Output is correct |
3 | Correct | 1 ms | 340 KB | Output is correct |
4 | Correct | 1 ms | 340 KB | Output is correct |
5 | Correct | 1 ms | 308 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 28 ms | 4388 KB | Output is correct |
2 | Correct | 42 ms | 4424 KB | Output is correct |
3 | Correct | 26 ms | 4312 KB | Output is correct |
4 | Correct | 26 ms | 4252 KB | Output is correct |
5 | Correct | 26 ms | 4376 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 59 ms | 7004 KB | Output is correct |
2 | Correct | 47 ms | 6904 KB | Output is correct |
3 | Correct | 63 ms | 6972 KB | Output is correct |
4 | Correct | 63 ms | 6948 KB | Output is correct |
5 | Correct | 62 ms | 7016 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 827 ms | 65536 KB | Execution killed with signal 9 |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 939 ms | 53744 KB | Memory limit exceeded |
2 | Halted | 0 ms | 0 KB | - |