当前位置:首页 > 题解目录 > 正文内容

【题解】取数

亿万年的星光3年前 (2023-05-20)题解目录3312

【题目描述】

设有N 个正整数(1 <= N <= 50),其中每一个均是大于等于1、小于等于300的数。
从这N个数中任取出若干个数(不能取相邻的数),要求得到一种取法,使得到的和为最大。
例如:当N=5时,有5个数分别为:13,18,28,45,21
此时,有许多种取法,如: 13,28,21 和为62
13, 45 和为58
18,45 和为63
……….

和为63应该是满足要求的一种取法

【输入描述】

第一行是一个整数N
第二行有N个符合条件的整数。

【输出描述】

一个整数,即最大和

【样例输入】

5
13 18 28 45 21

【样例输出】

63

【题目分析】


【参考答案】

#include<bits/stdc++.h>
using namespace std;
int a[51],f[51];
int main(){
	int n,i;
	cin>>n;
	for(i=1;i<=n;i++){
		cin>>a[i];
	}
	f[1] = a[1];
	f[2] = a[2];
	for(i=3;i<=n;i++){
		f[i] = max(f[i-2],f[i-3]) + a[i];
	}
	cout<<max(f[n-1],f[n]);
	return 0;
}


    扫描二维码推送至手机访问。

    版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

    分享给朋友:

    相关文章

    【题解】取余(2019青岛市程序设计竞赛)

    【问题描述】给你n个正整数a1,a2,..,an。求(a1*a2*..an)%10007的值。【输入】第一行,n,表示整数的个数。第二行,n个用空格隔开的正整数。【输出】一个整数,(a1*a2*..a...

    【题解】赢得比赛需要的最少训练时长

    【题目描述】你正在参加一场比赛,给你两个 正 整数 initialEnergy 和 initialExperience 分别表示你的初始精力...

    【题解】数学游戏

    【题目描述】Kri 喜欢玩数字游戏。 一天,他在草稿纸上写下了t 对正整数(x,y) ,并对于每一对正整数计算出了z=x*y*gcd(x,y);可是调皮的 Zay 找到了 Kri 的草稿纸,并把每一...

    2021年市南区程序设计竞赛(小学组)

    1.建设病房(build.cpp)【题目描述】2020年1月23日下午,武汉市建设局紧急召集中建三局等单位举行专题会议,要求参照2003年抗击非典期间北京小汤山医院模式,在武汉职工疗养院建设火神山医院...

    【题解】BFS—迷宫问题(1)

    【题解】BFS—迷宫问题(1)

    【题目描述】一个5*5的矩阵,矩阵内用0,1显示。其中,0是路,表示这个点可以走,1是墙表示这个点不可以走。问,从给定的矩阵中从左上角到右下角最少需要走多少步?注:题目保证有解(不存在左上角和右下角为...

    【题解】区间数位个数

    2.区间数位个数(digit.cpp)【描述】给定整数n和整数k,求出1~n中所有数的每一位数字中,出现数字k的次数。【输入】第一行是两个个整数n和k【输出】一个整数表示答案。【样例输入输出】ligh...