이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#ifdef EVAL
#else
#include"grader.cpp"
#endif
#include"meetings.h"
#include<bits/stdc++.h>
using namespace std;
void add(int x,int y){
if(x>y)swap(x,y);
Bridge(x,y);
}
void go(vector<int>v){
if(v.size()<2)return;
random_shuffle(v.begin(),v.end());
map<int,vector<int>>m;
m[v[0]].push_back(v[0]);
m[v[1]].push_back(v[1]);
vector<int>path;
for(int i=2;i<v.size();i++){
int x=Query(v[0],v[1],v[i]);
if(!m.count(x))path.push_back(x);
m[x].push_back(v[i]);
}
sort(path.begin(),path.end(),[&](int l,int r){return Query(v[0],l,r)==l;});
int last=v[0];
for(int x:path)add(last,x),last=x;
add(last,v[1]);
for(auto it:m)go(it.second);
}
void Solve(int n){
srand(time(0));
vector<int>all(n);
iota(all.begin(),all.end(),0);
go(all);
}
컴파일 시 표준 에러 (stderr) 메시지
meetings.cpp: In function 'void go(std::vector<int>)':
meetings.cpp:19:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
19 | for(int i=2;i<v.size();i++){
| ~^~~~~~~~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |