제출 #212205

#제출 시각아이디문제언어결과실행 시간메모리
212205shahadbalghonaim카멜레온의 사랑 (JOI20_chameleon)C++14
0 / 100
26 ms640 KiB
#include <bits/stdc++.h> #include "chameleon.h" //https://cms.ioi-jp.org/tasks/chameleon/descriptionusing namespace std; using namespace std; void Solve(int N){ int n=N*2; vector<bool>solved(n+1,0); map<int,vector<int>>theval; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ if(i==j){continue;} if(Query({i,j})==1){theval[i].push_back(j);} } } map<int,vector<int>>graph; int haha=0; for(int i=1;i<=n;i++){ if(solved[i]==1)continue; if(theval[i].size()==1){haha++;Answer(i,theval[i][0]);solved[i]=1;solved[theval[i][0]]=1;continue;} if(Query({i,theval[i][0],theval[i][1]})==1){graph[i].push_back(theval[i][2]);} else if(Query({i,theval[i][0],theval[i][2]})==1){graph[i].push_back(theval[i][1]);} else if(Query({i,theval[i][2],theval[i][1]})==1){graph[i].push_back(theval[i][0]);graph[theval[i][0]].push_back(i);} } for(int i=1;i<=n;i++){ if(solved[i]==1){continue;} int a=graph[i][0],b=graph[i][1]; for(int j=0;j<3;j++){ if(theval[i][j]!=a&&theval[i][j]!=b){assert(solved[theval[i][j]]==0);Answer(i,theval[i][j]);solved[i]=1;solved[theval[i][j]]=1;break;} } } }
#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...