제출 #423953

#제출 시각아이디문제언어결과실행 시간메모리
423953errorgorn카멜레온의 사랑 (JOI20_chameleon)C++17
4 / 100
40 ms348 KiB
#include "chameleon.h"

#include <bits/stdc++.h>
using namespace std;

#define ll long long
#define ii pair<ll,ll>
#define fi first
#define se second
#define endl '\n'

#define puf push_front
#define pof pop_front
#define pub push_back
#define pob pop_back

#define rep(x,s,e) for (auto x=s-(s>e);x!=e-(s>e);s<e?x++:x--)
#define all(x) (x).begin(),(x).end()
#define sz(x) (int) (x).size()

mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());

int n;

bool solved[1005];

void Solve(int N) {
	n=N;
	
	rep(x,0,n){
		vector<int> v;
		rep(y,1,2*n+1) if (!solved[y]) v.pub(y);
		
		while (sz(v)!=2){
			rep(x,0,sz(v)) swap(v[x],v[rng()%(x+1)]);
			
			vector<int> l,r;
			
			rep(x,0,sz(v)/2) l.pub(v[x]);
			rep(x,sz(v)/2,sz(v)) r.pub(v[x]);
			
			if (Query(l)!=sz(l)) v=l;
			else if (Query(r)!=sz(r)) v=r;
		}
		
		solved[v[0]]=true;
		solved[v[1]]=true;
		Answer(v[0],v[1]);
	}
	
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...