Submission #1364969

#TimeUsernameProblemLanguageResultExecution timeMemory
1364969biserailievaToy Design (EGOI22_toydesign)C++17
0 / 100
35 ms324 KiB
#include <bits/stdc++.h>
using namespace std;

#define F first
#define S second
const int N = 205 ;
const int Q = 20005 ;
int n , arr[N] ;
vector<pair<int,int>> edges ;
vector<int> v ;

int Connected(int a, int i, int j);
void DescribeDesign(std::vector<std::pair<int, int>> result);

void ToyDesign(int n, int max_ops)
{
    vector<pair<int,int>> result;
    int current = 0;
    for(int i=1;i<=n;i++)
    {
        for(int j=i+1;j<=n;j++)
        {
            int x = Connected(current, i, j);
            if(x != current)
            {
                result.push_back({i,j});
                current = x;
            }
        }
    }
    DescribeDesign(result);
}

int Connected(int a , int i , int j){
    cout << "? " << a << ' ' << i << ' ' << j << endl ;
    int k ; cin >> k ; return k ;
}
void DescribeDesign(vector<pair<int,int>> result){
    cout << "! " << (int)result.size() << endl ;
    for(auto it:result) cout << it.F << ' ' << it.S << endl ;
}

int main(){
    cin >> n ;
    ToyDesign(n,n) ;
    return 0 ;
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...