# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
289812 | 2020-09-03T05:42:00 Z | duckmoon99 | Zalmoxis (BOI18_zalmoxis) | C++14 | 163 ms | 8428 KB |
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace std; using namespace std::chrono; using namespace __gnu_pbds; #define fi first #define se second #define mp make_pair #define pb push_back #define fbo find_by_order #define ook order_of_key typedef long long ll; typedef pair<int,int> ii; typedef vector <ii> vii; typedef vector<int> vi; typedef long double ld; typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> pbds; typedef set<int>::iterator sit; typedef map<int,int>::iterator mit; typedef vector<int>::iterator vit; /* 5 1 29 27 25 25 28 */ int main(){ ios_base::sync_with_stdio(0); cin.tie(0); int n, k; cin >> n >> k; int x; stack<int> s, curr; int ans[n+k]; int idx = n+k-1; for(int i = 0; i < n; i++){ cin >> x; s.push(x); } curr.push(30); while(!s.empty()){ if(curr.top()<=s.top()){ ans[idx]=curr.top(); if(s.top()==curr.top())s.pop(); curr.pop(); idx--; }else{ int x=curr.top(); curr.pop(); curr.push(x-1); curr.push(x-1); } } assert(idx+1>=curr.size()); while(idx>=0){ if(curr.empty()){ cout << -1 <<'\n'; return 0; }else if(int(curr.size())==idx+1){ ans[idx]=curr.top(); curr.pop(); idx--; }else{ if(curr.top()==0){ ans[idx]=curr.top(); curr.pop(); idx--; }else{ x=curr.top(); curr.pop(); curr.push(x-1); curr.push(x-1); } } } for(int i = 0; i < n+k; i++){ cout<<ans[i]<<" "; } cout<<'\n'; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 158 ms | 6660 KB | Output is correct |
2 | Correct | 156 ms | 6704 KB | Output is correct |
3 | Correct | 158 ms | 6744 KB | Output is correct |
4 | Correct | 159 ms | 6576 KB | Output is correct |
5 | Correct | 158 ms | 6576 KB | Output is correct |
6 | Correct | 159 ms | 6576 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 156 ms | 6576 KB | Output is correct |
2 | Correct | 157 ms | 6580 KB | Output is correct |
3 | Incorrect | 84 ms | 4700 KB | Unexpected end of file - int32 expected |
4 | Correct | 158 ms | 6576 KB | Output is correct |
5 | Correct | 157 ms | 6704 KB | Output is correct |
6 | Correct | 157 ms | 6576 KB | Output is correct |
7 | Correct | 157 ms | 6576 KB | Output is correct |
8 | Correct | 163 ms | 6708 KB | Output is correct |
9 | Correct | 147 ms | 8420 KB | Output is correct |
10 | Correct | 113 ms | 7320 KB | Output is correct |
11 | Correct | 126 ms | 8428 KB | Output is correct |
12 | Correct | 89 ms | 6392 KB | Output is correct |
13 | Correct | 91 ms | 6264 KB | Output is correct |
14 | Correct | 87 ms | 6264 KB | Output is correct |