# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1107235 | 2024-11-01T04:30:22 Z | TrieTr | Zagrade (COI20_zagrade) | C++14 | 777 ms | 1336 KB |
#include<bits/stdc++.h> using namespace std; void local() { #define taskname "" if(fopen(taskname".inp", "r")) { freopen(taskname".inp", "r", stdin); freopen(taskname".out", "w", stdout); } } #define ll long long #define fi first #define se second #define fastio ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); template <class X, class Y> bool mini(X& x, Y y) {return x > y ? x = y, true : false;} template <class X, class Y> bool maxi(X& x, Y y) {return x < y ? x = y, true : false;} const int N = 1e6 + 5; int n, q; bool ask(int a, int b) { a++; b++; cout << "? " << a << ' ' << b << endl; bool ok; cin >> ok; return ok; } void answer(string s) { cout << "! " << s << endl; exit(0); } bool type[N]; int main() { fastio; local(); cin >> n >> q; string s(n, '#'); stack<int>st; st.emplace(0); int cur = n; for(int i = 1; i < n; i++) { if(st.empty()) st.emplace(i); else { if(ask(st.top(), i)) { s[st.top()] = '('; s[i] = ')'; st.pop(); cur -= 2; } else st.emplace(i); } } for(int i = 0; i < n; i++) { if(s[i] == '#') { if(cur) s[i] = '(', cur -= 2; else s[i] = ')'; } } answer(s); }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 336 KB | Output is correct |
2 | Correct | 4 ms | 336 KB | Output is correct |
3 | Correct | 7 ms | 336 KB | Output is correct |
4 | Correct | 7 ms | 336 KB | Output is correct |
5 | Correct | 8 ms | 336 KB | Output is correct |
6 | Correct | 8 ms | 336 KB | Output is correct |
7 | Correct | 7 ms | 336 KB | Output is correct |
8 | Correct | 5 ms | 460 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 336 KB | Mismatch at position 1. Expected ), found ( |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 336 KB | Output is correct |
2 | Correct | 374 ms | 552 KB | Output is correct |
3 | Correct | 765 ms | 552 KB | Output is correct |
4 | Correct | 755 ms | 548 KB | Output is correct |
5 | Correct | 715 ms | 548 KB | Output is correct |
6 | Correct | 702 ms | 552 KB | Output is correct |
7 | Correct | 748 ms | 1336 KB | Output is correct |
8 | Correct | 777 ms | 552 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 336 KB | Mismatch at position 1. Expected ), found ( |
2 | Halted | 0 ms | 0 KB | - |