#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;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++) {
if(road[c][k]) {
road[j][c] = road[c][j] = true;
}
if(road[j][c]) {
road[k][c] = road[c][k] = true;
}
}
found = true;
}
}
}
}
}
}
}
/*int main() {
run(4);
}*/
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
91 ms |
632 KB |
Ok! 1015 queries used. |
2 |
Correct |
71 ms |
744 KB |
Ok! 1008 queries used. |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
351 ms |
744 KB |
Number of queries more than 5000 out of 2500 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
363 ms |
744 KB |
Number of queries more than 4500 out of 2250 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
373 ms |
744 KB |
Number of queries more than 4000 out of 2000 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
346 ms |
744 KB |
Number of queries more than 3550 out of 1775 |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
330 ms |
744 KB |
Number of queries more than 3250 out of 1625 |
2 |
Halted |
0 ms |
0 KB |
- |