# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
87025 | 2018-11-29T08:48:06 Z | rakuten | Weighting stones (IZhO11_stones) | C++14 | 1000 ms | 1316 KB |
#include <bits/stdc++.h> #define fr first #define sc second #define pb push_back #define mk make_pair #define ll long long #define OK puts("OK") #define sz(s) (int)s.size() #define all(s) s.begin(), s.end() using namespace std; const int N = 1e5+10; const int inf = 1e9+7; int x , a , n , x1 , x2; set < int > v ; set < int > :: iterator vi ; set < int > q ; set < int > :: iterator qi ; int main() { cin >> n ; for (int i = 0 ;i < n ;i ++ ) { x1 = 0 ; x2 = 0 ; cin >> x >> a ; if (i == 0) { if (a == 1) cout << '>' << endl ; else cout << '<' << endl ; if (a == 1) v.insert (x) ; else q.insert (x) ; } else { if (a == 1) v.insert (x) ; else q.insert (x) ; if (v.size() == 0) cout << '<' << endl ; else if (q.size() == 0 ) cout << '>' << endl ; else { qi = --q.end(); for (vi = --v.end(); ; vi -- ) { if ( (*vi) > (*qi)) x1 ++ ; else x2 ++ ; if (qi == q.begin() || vi == v.begin()) break; qi -- ; } if (x1 > x2 && x2 == 0 && x1 == q.size() ) cout << '>' << endl ; else if (x1 < x2 && x1 == 0 && x2 == v.size() ) cout << '<' << endl; else cout << '?' << endl ; } } } }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 256 KB | Output is correct |
2 | Correct | 2 ms | 372 KB | Output is correct |
3 | Correct | 3 ms | 524 KB | Output is correct |
4 | Correct | 2 ms | 540 KB | Output is correct |
5 | Correct | 4 ms | 540 KB | Output is correct |
6 | Correct | 4 ms | 604 KB | Output is correct |
7 | Correct | 11 ms | 612 KB | Output is correct |
8 | Correct | 17 ms | 636 KB | Output is correct |
9 | Correct | 14 ms | 660 KB | Output is correct |
10 | Execution timed out | 1000 ms | 1316 KB | Time limit exceeded |
11 | Halted | 0 ms | 0 KB | - |