题解:P15499 [ICPC 2025 APC] Secret Lilies and Roses
下文钦定百合是
我们发现要回答的东西很奇怪,考虑找到一些性质把答案转化一下。
通过观察与手模,我们发现答案其实就是序列中
一个显然的思路是,我们随便找到一个位置
我们发现
所以我们只需要找到一个
询问次数为
#include<bits/stdc++.h>
#define int long long
using namespace std;
int query(int x){
cout<<"type "<<x<<'\n';
fflush(stdout);
string s;
cin>>s;
if(s[0]=='l')return 1;
else return 0;
}
int mul(int x){
cout<<"multi "<<x<<'\n';
fflush(stdout);
int y;
cin>>y;
return y;
}
void ans(int x){
cout<<"answer "<<x<<'\n';
fflush(stdout);
}
signed main(){
int T;
cin>>T;
while(T--){
int n;
cin>>n;
int l=1,r=n;
while(l<=r){
int mid=(l+r)/2;
if(query(mid))r=mid-1;
else l=mid+1;
}
swap(l,r);
if(l==0)ans(mul(1));
else if(r==n+1)ans(n-mul(n-1));
else ans(l+mul(l+1)-mul(l-1));
}
return 0;
}