# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1040506 | 2024-08-01T06:32:38 Z | 김은성(#10995) | How to Avoid Disqualification in 75 Easy Steps (CEOI23_avoid) | C++17 | 1 ms | 596 KB |
#include "avoid.h" #include <algorithm> #include <cstdio> #include <cstring> #include <deque> #include <map> #include <queue> #include <set> #include <string> #include <vector> #include <time.h> #include <random> using namespace std; const int robot = 75; bool ch[100][1009]; bool ret2[10][10]; std::pair<int, int> scout(int R, int H) { int i, i2, j, k, ans = 0; for (i = 0; i < 10; i++) { vector<int> vec, vec2; for (j = 1; j <= 1000; j++) { if (j & (1 << i)){ vec.push_back(j); } else{ vec2.push_back(j); } } send(vec); send(vec2); } for(i=0; i<10; i++){ for(i2=i+1; i2<10; i2++){ vector<int> vec; for (j = 1; j <= 1000; j++) { if ((j & (1 << i)) && (j & (1<<i2))){ vec.push_back(j); } } send(vec); } } vector<int> ret = wait(); vector<int> crit; ans = 0; for(i=0; i<10; i++){ if(ret[2*i] && ret[2*i+1]) crit.push_back(i); else if(ret[2*i]) ans |= (1<<i); } int cur = 20; for(i=0; i<10; i++){ for(j=i+1; j<10; j++){ ret2[i][j] = ret[cur++]; } } if(crit.empty()){ return make_pair(ans, ans); } int tot = 0, sub = 0; for(i=0; i<crit.size(); i++) tot |= (1<<crit[i]); int last = 0; for(i=0; i+1<crit.size(); i++){ if(!ret2[crit[i]][crit[i+1]]) last = 1-last; sub += last * (1<<(crit[i+1])); } return make_pair(ans+sub, ans+tot-sub); //end for(i=1; i<=1000; i++){ for(j=1; j<=1000; j++){ for(k=0; k<robot; k++){ if(ret[k] != (ch[k][i] || ch[k][j])) break; } if(k==robot) return make_pair(i, j); } } return make_pair(-1, -1); }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 0 ms | 344 KB | Not correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 344 KB | Not correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 1 ms | 344 KB | Not correct |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
2 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
3 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
4 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
5 | Correct | 1 ms | 596 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
6 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
7 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
8 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
9 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
10 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
11 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
12 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
13 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
14 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |
15 | Correct | 1 ms | 344 KB | Correct: 65 robot(s) used, 1 hour(s) passed |