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

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

hdu2546 飯卡 01背包問(wèn)題

2019-11-08 02:46:52
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

題目大意: 用一張有余額為m的飯卡去打飯,有n種不同價(jià)格的菜,若飯卡余額低于5元?jiǎng)t不能打飯,打飯后余額允許為負(fù),求余額最低為多少

大致思路: 需要注意的是飯卡余額不能低于5元,所以需要可變范圍要小于等于m-5。由于菜的順序?qū)^(guò)程沒(méi)有影響,所以sort后將價(jià)格最大的菜單獨(dú)拿出來(lái),在n-1種菜中進(jìn)行動(dòng)態(tài)規(guī)劃。

C++:

#include<cstdio>#include<algorithm>#include<cstring>using namespace std;const int maxn=1010;int c[maxn],dp[maxn];int main(){ int n; while(scanf("%d",&n)!=EOF){ if(n==0) break; memset(dp,0,sizeof(dp)); int i,j; for(i=0;i<n;i++) scanf("%d",&c[i]); sort(c,c+n); int cost; scanf("%d",&cost); if(cost>=5){ for(i=0;i<n-1;i++) //將c[n-1]單獨(dú)拿出來(lái) for(j=cost-5;j>=c[i];j--) dp[j]=max(dp[j],dp[j-c[i]]+c[i]);
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 鄱阳县| 法库县| 凯里市| 佛山市| 广南县| 增城市| 和林格尔县| 馆陶县| 武城县| 宁强县| 平乡县| 综艺| 曲松县| 若尔盖县| 尚义县| 宁乡县| 齐齐哈尔市| 稷山县| 电白县| 新巴尔虎左旗| 六盘水市| 惠来县| 万荣县| 阜南县| 西平县| 边坝县| 连南| 星座| 陕西省| 舞阳县| 洪泽县| 布尔津县| 沙湾县| 广宁县| 城市| 金寨县| 邳州市| 闽侯县| 青田县| 海宁市| 来安县|