国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 连城县| 库车县| 资源县| 揭西县| 广宁县| 宁德市| 开阳县| 靖宇县| 金堂县| 三原县| 买车| 个旧市| 成武县| 桓台县| 苗栗市| 瓮安县| 衡阳市| 白玉县| 鞍山市| 花莲县| 塔河县| 祁东县| 河源市| 息烽县| 夏津县| 永胜县| 柘荣县| 涟源市| 门头沟区| 视频| 芜湖县| 察雅县| 宾川县| 湘阴县| 邹平县| 威宁| 平阳县| 周至县| 工布江达县| 澜沧| 和顺县|