P1851 成熟的数列

发布时间 2023-05-25 12:30:56作者: 刘海烽
#include<iostream>
#include<algorithm>//lower_bound函数
using namespace std;
typedef long long ll;
const int N = 1e6+5;
int n,z;
ll num[N];
int main()
{
cin>>num[0]>>num[1];
cin>>z;
for(int i=2;i<=z;i++) num[i]=num[i/2]+num[i/4];
cin>>n;
while(n--)
{
ll t;
cin>>t;
auto ans=lower_bound(num,num+z,t)-num;//得到下标
if(num[ans]==t) cout<<ans<<endl;
else cout<<-1<<endl;
}
return 0;
}