#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 i=1;i<N-1;i++) {
bool found = false;
for(int j=1;j<=N;j++) {
for(int k=1;k<j;k++) {
if(!found) {
if(!road[k][j] && j!=k) {
int a[] = {j};
int b[] = {k};
bool check = bool(query(1, 1, a, b));
if(check) {
road[j][k] = road[k][j] = true;
setRoad(k, j);
for(int c=1;c<=N;c++) {
for(int d=1;d<=N;d++) {
if((road[c][k] && road[j][d]) || (road[c][j] && road[d][k])) {
road[c][d] = road[d][c] = true;
}
}
}
found = true;
}
}
}
}
}
}
}
/*int main() {
run(4);
}*/
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
95 ms |
504 KB |
Not all edges were guessed! |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
367 ms |
624 KB |
Number of queries more than 5000 out of 2500 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
374 ms |
644 KB |
Number of queries more than 4500 out of 2250 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
329 ms |
712 KB |
Number of queries more than 4000 out of 2000 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
319 ms |
764 KB |
Number of queries more than 3550 out of 1775 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
259 ms |
764 KB |
Number of queries more than 3250 out of 1625 |
2 |
Halted |
0 ms |
0 KB |
- |