动归
Mrzhq7
这个作者很懒,什么都没留下…
展开
-
Max Sum
这道题是一道很基础的dp题,就是求简单的最大子段和然后找出是从哪到哪。只需要新开一个数组pre来记录它的开始点就可以了。 Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a sub-sequence. For example, given (6,-1,5,4,-7), ...原创 2018-11-06 15:52:02 · 175 阅读 · 0 评论 -
Common Subsequence
这道题就是典型的dp求最长公共子序列。主要的判断条件就是:1.如果m=n,那么就在dp[i-1][j-1]的基础上加1; 如果不是就是在之前的数上取得最大值。A subsequence of a given sequence is the given sequence with some elements (poss...原创 2018-11-06 15:55:46 · 158 阅读 · 0 评论 -
饭卡
这是一道01背包的一道变形的题。首先,它要求的是大于5快的时候价值任何大的物品都可以买,小于五块的时候价值任何小的东西都不能买,所以,我先对他进行了排序。把价值最大那个保留下来,让它最后一个大于等于五块的时候再减。然后就是利用01背包的一半思路来解决这个问题就电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额。如果购买一个商品之前,卡上的剩余金额大于或等于5元,就一定可以购买成功(...原创 2018-11-06 16:14:53 · 203 阅读 · 0 评论 -
Piggy-Bank
这是一道完全背包模板题。它的大意就是说给你一个硬币罐子的容量,然后给你不同种类的硬币,价值和重量各不相同。然后采取01背包的思想,不过要先将dp设置为最大值,然后再按照从小的重量到极限的重量来dp就可以了;Before ACM can do anything, a budget must be prepared and the necessary financial support obtai...原创 2018-11-07 20:24:47 · 159 阅读 · 0 评论 -
免费馅饼
首先应该明白他在当前的这个位置有3种选择,在下一秒的时候他可以选择向左或者向右或者呆在原地不动,而且在当前的这一秒他会接住落在当前这一秒的数目。所以dp方程就写出来了;dp[i][j]=max(dp[i+1][j-1],dp[i+1][j],dp[i+1][j+1]+data[i][j],表示为在第i秒的j位置它应该如何选择。 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,...原创 2018-11-13 16:54:04 · 380 阅读 · 0 评论