Submission #59669797
Source Code Expand
#include <bits/stdc++.h> #include<atcoder/all> #define rep(i,n) for(int i=0;i<(n);i++) using namespace std; using namespace atcoder; #define all(a) a.begin(),a.end() typedef long long ll; typedef pair<ll,ll> P; constexpr ll mod=998244353; typedef modint1000000007 mi; ll fib[20]; int query(int q,int n){ if(1<=q&&q<=n){ cout<<"? "<<q<<endl; int a; cin>>a; return a; } else return -1; } void solve(){ int n;cin>>n; int m=0; for(;fib[m]<=n;m++); int L=0,R=fib[m]; int idx1=fib[m-2],idx2=fib[m-1]; int a1=query(idx1,n); int a2=query(idx2,n); while(R-idx2>1||idx2-idx1>1||idx1-L>1){ if(a1<a2){ L=idx1; idx1=idx2; a1=a2; idx2=R-(idx1-L); a2=query(idx2,n); } else{ R=idx2; idx2=idx1; a2=a1; idx1=L+R-idx2; a1=query(idx1,n); } //cout<<L<<" "<<idx1<<" "<<idx2<<" "<<R<<endl; } cout<<"! "<<max(a1,a2)<<endl; } int main(){ int t;cin>>t; fib[1]=1; for(int i=2;i<20;i++)fib[i]=fib[i-1]+fib[i-2]; rep(T,t){ solve(); } }
Submission Info
Submission Time | |
---|---|
Task | 053 - Discrete Dowsing(★7) |
User | Rho17 |
Language | C++ 20 (gcc 12.2) |
Score | 7 |
Code Size | 1242 Byte |
Status | AC |
Exec Time | 24 ms |
Memory | 4056 KiB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 7 / 7 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 01_sample_01.txt, 01_sample_02.txt |
All | 01_sample_01.txt, 01_sample_02.txt, 02_fixed_02.txt, 03_small_01.txt, 03_small_02.txt, 03_small_03.txt, 03_small_04.txt, 03_small_05.txt, 03_small_06.txt, 03_small_07.txt, 03_small_08.txt, 03_small_09.txt, 03_small_10.txt, 04_deterministic_01.txt, 04_deterministic_02.txt, 04_deterministic_03.txt, 04_deterministic_04.txt, 04_deterministic_05.txt, 04_deterministic_06.txt, 04_deterministic_07.txt, 04_deterministic_08.txt, 04_deterministic_09.txt, 04_deterministic_10.txt, 05_adaptive_01.txt, 05_adaptive_02.txt, 05_adaptive_03.txt, 05_adaptive_04.txt, 05_adaptive_05.txt, 05_adaptive_06.txt, 05_adaptive_07.txt, 05_adaptive_08.txt, 05_adaptive_09.txt, 05_adaptive_10.txt, 06_edge_01.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01_sample_01.txt | AC | 7 ms | 3716 KiB |
01_sample_02.txt | AC | 3 ms | 3712 KiB |
02_fixed_02.txt | AC | 3 ms | 3724 KiB |
03_small_01.txt | AC | 14 ms | 3992 KiB |
03_small_02.txt | AC | 14 ms | 4024 KiB |
03_small_03.txt | AC | 14 ms | 4000 KiB |
03_small_04.txt | AC | 14 ms | 4016 KiB |
03_small_05.txt | AC | 14 ms | 4020 KiB |
03_small_06.txt | AC | 4 ms | 3768 KiB |
03_small_07.txt | AC | 3 ms | 3708 KiB |
03_small_08.txt | AC | 4 ms | 3724 KiB |
03_small_09.txt | AC | 4 ms | 3840 KiB |
03_small_10.txt | AC | 4 ms | 3844 KiB |
04_deterministic_01.txt | AC | 23 ms | 3908 KiB |
04_deterministic_02.txt | AC | 23 ms | 4056 KiB |
04_deterministic_03.txt | AC | 24 ms | 4020 KiB |
04_deterministic_04.txt | AC | 23 ms | 3848 KiB |
04_deterministic_05.txt | AC | 23 ms | 4024 KiB |
04_deterministic_06.txt | AC | 23 ms | 4012 KiB |
04_deterministic_07.txt | AC | 23 ms | 3884 KiB |
04_deterministic_08.txt | AC | 23 ms | 4016 KiB |
04_deterministic_09.txt | AC | 23 ms | 4012 KiB |
04_deterministic_10.txt | AC | 23 ms | 3892 KiB |
05_adaptive_01.txt | AC | 6 ms | 3700 KiB |
05_adaptive_02.txt | AC | 6 ms | 3692 KiB |
05_adaptive_03.txt | AC | 5 ms | 3884 KiB |
05_adaptive_04.txt | AC | 5 ms | 3724 KiB |
05_adaptive_05.txt | AC | 7 ms | 3872 KiB |
05_adaptive_06.txt | AC | 6 ms | 3720 KiB |
05_adaptive_07.txt | AC | 6 ms | 3724 KiB |
05_adaptive_08.txt | AC | 6 ms | 3852 KiB |
05_adaptive_09.txt | AC | 6 ms | 3928 KiB |
05_adaptive_10.txt | AC | 6 ms | 3864 KiB |
06_edge_01.txt | AC | 3 ms | 3720 KiB |