- 博客(3)
- 收藏
- 关注
原创 NOI / 2.6基本算法之动态规划——1944:吃糖果
例如:如果N=1,则名名第1天就吃掉它,共有1种方案;如果N=2,则名名可以第1天吃1块,第2天吃1块,也可以第1天吃2块,共有2种方案;如果N=3,则名名第1天可以吃1块,剩2块,也可以第1天吃2块剩1块,所以名名共有2+1=3种方案;如果N=4,则名名可以第1天吃1块,剩3块,也可以第1天吃2块,剩2块,共有3+2=5种方案。这个题可以很显然易见地得到关于数列的规律,及a[n]=a[n-1]+a[n-2],不难发现,这就是斐波那契数列,使用传统的递归、递推即可轻松解出来。输入只有1行,即整数N。
2023-11-25 22:11:52 144
原创 NOI / 2.6基本算法之动态规划——1759:最长上升子序列
比如,对于序列(1, 7, 3, 5, 9, 4, 8),有它的一些上升子序列,如(1, 7), (3, 4, 8)等等。这些子序列中最长的长度是4,比如子序列(1, 3, 5, 8).输入的第一行是序列的长度N (1 <= N <= 1000)。写法1:状态定义为以i为开头的最长上升子序列的长度(原作者:Trigger_G,按本作者的编程习惯略微改动,侵删)写法2:状态定义为以i为结尾的最长上升子序列的长度(原创)你的任务,就是对于给定的序列,求出最长上升子序列的长度。的时候,我们称这个序列是上升的。
2023-11-19 19:01:58 96 1
转载 NOI / 2.6基本算法之动态规划——3531:判断整除
输入的第一行包含两个数:N(2 < N < 10000)和k(2 < k< 100),其中N代表一共有N个数,k代表被除数。第二行给出序列中的N个整数,这些整数的取值范围都0到10000之间(可能重复)。所有结果中至少有一个可被整数k整除,我们则称此正整数序列可被k整除。例如上述序列可以被3、5、7整除,而不能被2、4、6、8……注意:0、-3、-6、-9……一个给定的正整数序列,在每个数之前都插入+号或-号后计算它们的和。写法1:先输入数据到数组,再求状态(按本作者的编程习惯略微改动)
2023-11-19 11:10:00 170 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人