求助,为啥最后一个测试不给过,测试输出50,我输出54
查看原帖
求助,为啥最后一个测试不给过,测试输出50,我输出54
659308
aa9527楼主2022/3/29 17:40
#include<iostream>
using namespace std;
int main()
{
	int a=0;
	int n=0;
	int m=0;
	int x=0;
	cin>>a>>n>>m>>x;
	int f[25][2]={0};
	int h[25][2]={0};
	f[0][0]=1;//第一站上车 
	f[0][1]=0;
	h[0][0]=f[0][0];//第一站车上 
	h[0][1]=f[0][1];
	f[1][0]=0;//第二 
	f[1][1]=1;
	h[1][0]=h[0][0]+f[1][0];
	h[1][1]=h[0][1]+f[1][1];
	for(int i=2;i<n-1;i++)//从第三站起 
	{
		f[i][0]=f[i-1][0]+f[i-2][0]; 
		f[i][1]=f[i-1][1]+f[i-2][1]; 
		h[i][0]=h[i-1][0]+f[i-2][0];
		h[i][1]=h[i-1][1]+f[i-2][1];
	}

	int s=(m-h[n-2][0]*a)/h[n-2][1];
	cout<<h[x-1][0]*a+h[x-1][1]*s<<endl;
} 
2022/3/29 17:40
加载中...