Submission #412926

#TimeUsernameProblemLanguageResultExecution timeMemory
412926couplefireZagrade (COI20_zagrade)C++17
100 / 100
1191 ms1100 KiB
#include <bits/stdc++.h>
using namespace std;

string ans = "(";

int query(int a, int b){
    cout << "? " << a+1 << " " << b+1 << endl;
    int x; cin >> x;
    return x;
}

int main(){
    cin.tie(0)->sync_with_stdio(false);
    int n, q; cin >> n >> q;
    vector<int> pos; pos.push_back(0);
    for(int i = 1; i<n; i++)
        if(pos.empty() || !query(pos.back(), i)) 
            pos.push_back(i), ans += '(';
        else pos.pop_back(), ans += ')';
    for(int i = 0; i<(int)pos.size()/2; i++)
        ans[pos[i]] = ')';
    cout << "! " << ans << endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...