QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#201523 | #5156. Going in Circles | SolitaryDream# | RE | 0ms | 0kb | C++17 | 1.2kb | 2023-10-05 14:57:10 | 2023-10-05 14:57:10 |
answer
#include<bits/stdc++.h>
using namespace std;
#define FOR(i,s,t) for(int i=(s),_t=(t); i<=_t; ++i)
typedef double db;
const db pi=acos(-1);
const int N=705;
void LEFT() {
printf("? left\n");
fflush(stdout);
}
void RIGHT() {
printf("? right\n");
fflush(stdout);
}
void FLIP() {
printf("? flip\n");
fflush(stdout);
}
int a[105];
bool check(int p) {
FOR(i,1,100) if(a[i]!=a[p-100+i]) return 0;
return 1;
}
int main() {
int x,p=100;
while(true) {
scanf("%d",&x);
if(x==1) {
FLIP();
} else {
if(p==1) break;
LEFT();
--p;
}
}
FLIP();
scanf("%d",&x);
a[1]=1;
while(p<100) {
RIGHT();
++p;
scanf("%d",&x);
if(x==1) {
cout << p-1 << endl;
return 0;
}
if(rand()&1) {
FLIP();
scanf("%d",&x);
a[p]=1;
}
}
while(true) {
RIGHT();
++p;
scanf("%d",&a[p]);
if(check(p)) {
cout << p-100 << '\n';
return 0;
}
}
return 0;
}
詳細信息
Test #1:
score: 0
Runtime Error
input:
0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 0 0 1 0 0 1 0 0 0 ...
output:
? left ? flip ? left ? left ? flip ? left ? left ? flip ? left ? left ? flip ? left ? flip ? left ? left ? left ? left ? left ? left ? left ? left ? flip ? left ? left ? left ? flip ? left ? left ? flip ? left ? left ? flip ? left ? left ? flip ? left ? left ? flip ? left ? flip ? left ? flip ? left...