国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

HDOJ(HDU).3466 Dividing coins ( DP 01背包 無后效性的理解)

2019-11-08 01:51:25
字體:
來源:轉載
供稿:網友

HDOJ(HDU).3466 Dividing coins ( DP 01背包 無后效性的理解)

題意分析

要先排序,在做01背包,否則不滿足無后效性,為什么呢? 等我理解了再補上。

代碼總覽

#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#define nmax 505#define nn 505*100using namespace std;struct item{ int p; int q; int v; int rate;}a[nmax];int dp[nn];bool cmp(item x, item y){ return x.rate<y.rate;}int main(){ //freopen("in.txt","r",stdin); int N,M; while(scanf("%d%d",&N,&M)!= EOF){ memset(dp,0,sizeof(dp)); for(int i = 1; i<= N;++i) {scanf("%d%d%d",&a[i].p,&a[i].q,&a[i].v); a[i].rate = a[i].q - a[i].p;} sort(a+1,a+1+N,cmp); for(int i = 1; i<=N;++i){ for(int j =M;j>=a[i].q;--j) dp[j] = max(dp[j],dp[j-a[i].p]+a[i].v); }
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宜兰市| 汶川县| 台江县| 阿图什市| 黄陵县| 临颍县| 探索| 前郭尔| 灯塔市| 铅山县| 宁晋县| 昌江| 西乡县| 南木林县| 安图县| 板桥市| 新泰市| 博野县| 安仁县| 阿巴嘎旗| 望都县| 大荔县| 鄂州市| 卢龙县| 武穴市| 治县。| 麟游县| 山丹县| 长葛市| 大埔县| 鄂伦春自治旗| 昂仁县| 民乐县| 萝北县| 阿合奇县| 平塘县| 青冈县| 茌平县| 耒阳市| 卢氏县| 莱州市|