题解
2023-08-31 19:25:57
发布于:广东
2阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
int f[30],h[30],p[30];
int a,n,m,x,ans;
void checkx(int mul){
if(x>=4) ans=(2+h[x-4])*a+h[x-3]*mul;
else if(x==1||x==2) ans=a;
else if(x==3) ans=2*a;
}
int main()
{
f[1]=f[2]=h[1]=1;
h[2]=2;
for(int i=3;i<=25;i++)
{
f[i]=f[i-1]+f[i-2];
h[i]=h[i-1]+f[i];
}
cin>>a>>n>>m>>x;
if(n>=5){
int mul=0;
mul=(m-(2+h[n-5])*a)/h[n-4];
checkx(mul);
}
else checkx(0);
cout<<ans<<endl;
return 0;
}
这里空空如也
有帮助,赞一个