指针原来是套娃的


私信TA

用户名:uq_92467646842

访问量:42961

签 名:

数学改变科学,科学改变世界

等  级
排  名 10
经  验 25103
参赛次数 49
文章发表 128
年  龄 0
在职情况 学生
学  校
专  业 物联网工程

  自我简介:

QQ:2830671713

解题思路:

使用int 型只能拿90的分,所以换成了long long int 

p数组表示第i月的幼虫数,dp数组表示第i月的成虫数

成虫数=上个月的成虫+前两个月的幼虫数

幼虫数=前x个月的成虫数*y

就像是动态规划一样,分解成子问题然后找到状态转移方程



参考代码:

#include <stdio.h>

int main ()
{
	int i,j;
	int x,y,z;
	long long int  p[1001]={0};
	long long int dp[1001]={0};
	scanf("%d %d %d",&x,&y,&z);
	
	for(i=1;i<=z+1;i++){
		if(i>x){//不到x个月只有1对成虫
			dp[i]=dp[i-1]+p[i-2];
			p[i]=dp[i-x]*y;
		}else{
			dp[i]=1;
		}
	}
	printf("%lld",dp[z+1]);
	
	return 0;
}


 

0.0分

157 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答

代码解释器

  评论区