Submission #1691209
Source Code Expand
// 基本テンプレート
#include <iostream>
#include <iomanip>
#include <cstdio>
#include <string>
#include <cstring>
#include <deque>
#include <list>
#include <queue>
#include <stack>
#include <vector>
#include <utility>
#include <algorithm>
#include <map>
#include <set>
#include <complex>
#include <cmath>
#include <limits>
#include <cfloat>
#include <climits>
#include <ctime>
#include <cassert>
#include <numeric>
#include <fstream>
#include <functional>
using namespace std;
#define rep(i,a,n) for(int (i)=(a); (i)<(n); (i)++)
#define repq(i,a,n) for(int (i)=(a); (i)<=(n); (i)++)
#define repr(i,a,n) for(int (i)=(a); (i)>=(n); (i)--)
#define int long long int
template<typename T> void chmax(T &a, T b) {a = max(a, b);}
template<typename T> void chmin(T &a, T b) {a = min(a, b);}
template<typename T> void chadd(T &a, T b) {a = a + b;}
typedef pair<int, int> pii;
typedef long long ll;
int dx[] = {0, 0, 1, -1};
int dy[] = {1, -1, 0, 0};
constexpr ll INF = 1001001001001001LL;
constexpr ll MOD = 1000000007LL;
signed main() {
int digit = -1;
rep(i,0,12) {
int val = 1;
rep(j,0,i) val *= 10;
printf("? %lld\n", val);
fflush(stdout);
char c; cin >> c;
if(c == 'N') {
digit = i-1;
break;
}
}
if(digit == -1) {
rep(i,0,12) {
int val = 2;
rep(j,0,i) val *= 10;
printf("? %lld\n", val);
fflush(stdout);
char c; cin >> c;
if(c == 'Y') {
digit = i;
break;
}
}
int ans = 1;
rep(i,0,digit) ans *= 10;
printf("! %lld\n", ans);
return 0;
}
int ub = 1, lb = 1;
rep(i,0,digit) lb *= 10;
rep(i,0,digit+1) ub *= 10;
ub--;
while(ub - lb > 1) {
int mid = (ub + lb) / 2;
printf("? %lld\n", mid*10);
fflush(stdout);
char c; cin >> c;
if(c == 'Y') ub = mid;
else lb = mid;
}
printf("! %lld\n", ub);
fflush(stdout);
return 0;
}
Submission Info
Submission Time |
|
Task |
E - Awkward Response |
User |
tsutaj |
Language |
C++14 (GCC 5.4.1) |
Score |
800 |
Code Size |
2164 Byte |
Status |
AC |
Exec Time |
5 ms |
Memory |
596 KB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
800 / 800 |
Status |
|
|
Set Name |
Test Cases |
Sample |
00_example_01.txt |
All |
00_example_01.txt, 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, 37.txt, 38.txt, 39.txt |
Case Name |
Status |
Exec Time |
Memory |
00_example_01.txt |
AC |
4 ms |
596 KB |
01.txt |
AC |
3 ms |
592 KB |
02.txt |
AC |
4 ms |
596 KB |
03.txt |
AC |
4 ms |
596 KB |
04.txt |
AC |
4 ms |
596 KB |
05.txt |
AC |
4 ms |
588 KB |
06.txt |
AC |
4 ms |
596 KB |
07.txt |
AC |
4 ms |
596 KB |
08.txt |
AC |
5 ms |
596 KB |
09.txt |
AC |
3 ms |
596 KB |
10.txt |
AC |
3 ms |
596 KB |
11.txt |
AC |
4 ms |
588 KB |
12.txt |
AC |
4 ms |
592 KB |
13.txt |
AC |
4 ms |
592 KB |
14.txt |
AC |
4 ms |
592 KB |
15.txt |
AC |
4 ms |
592 KB |
16.txt |
AC |
4 ms |
596 KB |
17.txt |
AC |
5 ms |
592 KB |
18.txt |
AC |
3 ms |
592 KB |
19.txt |
AC |
3 ms |
592 KB |
20.txt |
AC |
4 ms |
596 KB |
21.txt |
AC |
4 ms |
592 KB |
22.txt |
AC |
4 ms |
592 KB |
23.txt |
AC |
4 ms |
592 KB |
24.txt |
AC |
4 ms |
596 KB |
25.txt |
AC |
4 ms |
592 KB |
26.txt |
AC |
4 ms |
592 KB |
27.txt |
AC |
4 ms |
592 KB |
28.txt |
AC |
4 ms |
592 KB |
29.txt |
AC |
4 ms |
592 KB |
30.txt |
AC |
4 ms |
592 KB |
31.txt |
AC |
3 ms |
592 KB |
32.txt |
AC |
3 ms |
592 KB |
33.txt |
AC |
4 ms |
592 KB |
34.txt |
AC |
4 ms |
596 KB |
35.txt |
AC |
4 ms |
592 KB |
36.txt |
AC |
4 ms |
592 KB |
37.txt |
AC |
4 ms |
596 KB |
38.txt |
AC |
4 ms |
596 KB |
39.txt |
AC |
5 ms |
596 KB |