#include <bits/stdc++.h>
#include "icc.h"
using namespace std;
/*int query(int a, int b, int x[], int y[]) {
cout<<x[0]<<" "<<y[0]<<"\n";
int answ;
cin>>answ;
return answ;
}
void setRoad(int x, int y) {
cout<<"Road: "<<x<<" "<<y<<"\n";
}*/
void run(int N) {
bool road[N+2][N+2];
memset(road, false, sizeof(road));
for(int ed=1;ed<N;ed++) {
bool found = false;
for(int fi=1;fi<=N;fi++) {
for(int si=fi+1;si<=N;si++) {
if(!road[fi][si] && !found) {
int a[] = {fi};
int b[] = {si};
bool temp = bool(query(1,1,a,b));
if(temp) {
road[fi][si] = road[si][fi] = true;
for(int i=1;i<=N;i++) {
for(int j=1;j<=N;j++) {
if((road[i][fi] && road[j][si]) || (road[j][fi] && road[i][si])) {
road[i][j] = road[j][i] = true;
}
}
}
found = true;
}
}
}
}
}
}
/*int main() {
run(4);
}*/
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
91 ms |
504 KB |
Not all edges were guessed! |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
323 ms |
504 KB |
Number of queries more than 5000 out of 2500 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
362 ms |
648 KB |
Number of queries more than 4500 out of 2250 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
343 ms |
668 KB |
Number of queries more than 4000 out of 2000 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
286 ms |
668 KB |
Number of queries more than 3550 out of 1775 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
302 ms |
740 KB |
Number of queries more than 3250 out of 1625 |
2 |
Halted |
0 ms |
0 KB |
- |