제출 #1216865

#제출 시각아이디문제언어결과실행 시간메모리
1216865Younis_DwaiMonster Game (JOI21_monster)C++20
10 / 100
48 ms720 KiB
#include "monster.h" #define pb push_back #include<bits/stdc++.h> using namespace std; vector<int> adj[205]; int id[205],Q[205][205]; std::vector<int> Solve(int N){ std::vector<int> T(N); for(int i=0;i<=N;i++) adj[i].clear(); for(int i=0;i<N;i++){ for(int j=i+1;j<N;j++){ Q[i][j]=Query(i,j); Q[j][i]=1-Q[i][j]; } } for(int i=0;i<N;i++){ int cnt=0; for(int j=0;j<N;j++){ if(i==j) continue ; if(Q[i][j])++cnt; } adj[cnt].pb(i); } for(int i=2;i<=N-3;i++){ id[i]=adj[i][0]; T[adj[i][0]]=i; } if(Q[adj[1][0]][adj[1][1]]){ id[0]=adj[1][0]; id[1]=adj[1][1]; T[id[0]]=0; T[id[1]]=1; } else{ id[0]=adj[1][1]; id[1]=adj[1][0]; T[id[0]]=0; T[id[1]]=1; } if(Q[adj[N-2][0]][adj[N-2][1]]){ id[N-2]=adj[N-2][0]; id[N-1]=adj[N-2][1]; T[id[N-1]]=N-1; T[id[N-2]]=N-2; } else{ id[N-2]=adj[N-2][1]; id[N-1]=adj[N-2][0]; T[id[N-1]]=N-1; T[id[N-2]]=N-2; } return T; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...