可以这么写,代码:
```c
#include<bits/stdc++.h>
using namespace std;
int a,n,m,x,ans;
int f[20],sum[20];
int main()
{
```
cin>>a>>n>>m>>x;
ans=a;
if(x>=3)
ans+=a;
if(x>=4)
{
f[1]=f[2]=1;
for(int i=3;i<=n-4;i++)
f[i]=f[i-1]+f[i-2];
for(int i=1;i<=n-4;i++)
sum[i]=sum[i-1]+f[i];
int y=(m-sum[n-5]*a-ans)/sum[n-4];
ans+=sum[x-4]*a+sum[x-3]*y;
}
cout<<ans<<endl;
return 0;
}
by DREAM_flyfish @ 2022-08-25 21:31:52
已经AC了
by DREAM_flyfish @ 2022-08-25 21:32:34
@[JMCJimmyMaker](/user/775490) 纯规律大概不行
by xiaoshuaibi @ 2023-02-03 22:18:58
@[JMCJimmyMaker](/user/775490)
求关注
AC
```
#include<iostream>
using namespace std;
int ta[21],tb[21];
int main()
{
int a,n,m,x;
cin>>a>>n>>m>>x;
ta[1]=1;ta[2]=1;ta[3]=2;
for(int i=4;i<n;i++)
{
ta[i]=ta[i-1]+ta[i-2]-1;
tb[i]=tb[i-1]+tb[i-2]+1;
}
int b=(m-a*ta[n-1])/tb[n-1];
cout<<ta[x]*a+tb[x]*b<<endl;
return 0;
}
by xxc123 @ 2023-04-11 21:46:22