日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【题解】lugu P4095 Eden的新背包问题

發布時間:2024/4/17 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【题解】lugu P4095 Eden的新背包问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

總結:
1.

?

50分的代碼(因為由多個數據,所以不能改變num[]數組)

#include<bits/stdc++.h> using namespace std; struct node{int pos, value; }que[1005]; int c[1005], w[1005], num[1005], f[1005], vis[1005]; int n, head, tail, V, q, h, z[1005]; int main() {cin >> n;for(int i = 0; i < n; i++)cin >> c[i] >> w[i] >> num[i];cin >> q;for(int cnt = 1; cnt <= q; cnt++) { memset(f, 0, sizeof(f));cin >> h >> V;vis[h] = 1;for(int i=0;i<n;i++) {if(!vis[i]){z[i] = min(num[i], V/c[i]); //用z[]數組代表能用多少件物品for(int mo=0;mo<c[i];mo++) {head=tail=0;for(int k=0;k<=(V-mo)/c[i];k++) {int x=k;int y=f[k*c[i]+mo]-k*w[i];while(head<tail && que[head].pos<k-z[i])head++;while(head<tail && que[tail-1].value<=y)tail--;que[tail].value=y,que[tail].pos=x;tail++;f[k*c[i]+mo]=que[head].value+k*w[i];}}} } cout << f[V] << endl; vis[h] = 0; } return 0; }

?

正解

#include<bits/stdc++.h> using namespace std; long long n, q, d, e, ans, vis[1010]; long long dp[1010][1010], f[1010][1010], val[1010], w[1010], c[1010]; long long re,p; void pre() {for(int i = 1; i <= n; i++){for(int j = 1; j <= 1000; j++)dp[i][j] = dp[i-1][j];re = c[i]; p = 1;while(re>=p){for(int j=1000;j>=w[i]*p;j--)dp[i][j]=max(dp[i][j],dp[i][j-w[i]*p]+val[i]*p);re-=p;p=p<<1;}if(re){for(int j=1000;j>=w[i]*re;j--)dp[i][j]=max(dp[i][j],dp[i][j-w[i]*re]+val[i]*re);}}for(int i = n; i >= 1; i--){for(int j = 1; j <= 1000; j++)f[i][j] = f[i+1][j];re = c[i]; p = 1;while(re>=p){for(int j=1000;j>=w[i]*p;j--)f[i][j]=max(f[i][j], f[i][j-w[i]*p]+val[i]*p);re-=p;p=p<<1;}if(re){for(int j=1000;j>=w[i]*re;j--)f[i][j]=max(f[i][j],f[i][j-w[i]*re]+val[i]*re);}} }int main() {cin >> n;for(int i = 1; i <= n; i++)cin >> w[i] >> val[i] >> c[i];pre();cin >> q;while(q--){ans = 0;cin >> d >> e;d++;for(int i = 0; i <= e; i++)ans = max(ans, dp[d-1][i]+f[d+1][e-i]);cout << ans << endl;} return 0; }

?

轉載于:https://www.cnblogs.com/lovezxy520/p/11374675.html

總結

以上是生活随笔為你收集整理的【题解】lugu P4095 Eden的新背包问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美日韩亚洲第一 | 中文字幕四区 | 免费成人深夜夜行p站 | 五月天一区二区 | 污污网站在线 | 刘亦菲毛片| 亚洲国产成人一区 | 亚洲AV无码成人精品区东京热 | 国产精品6666 | 538任你躁在线精品免费 | 性感美女在线 | 在线成人播放 | 极品蜜桃臀肥臀-x88av | 亚洲日日操 | 黑丝一区二区三区 | 97在线观看 | 午夜888| 那个网站可以看毛片 | 国产v片| 亚洲精品一区二区三区婷婷月 | 久久精品国产99 | 亚洲最大黄色 | 日本韩国中文字幕 | 午夜老湿机 | 国产一区二区中文字幕 | a一级网站 | 电家庭影院午夜 | 豆花av| 国产香蕉尹人视频在线 | 日韩欧美国产一区二区在线观看 | 久久精品9 | 少妇高潮视频 | 精品人伦一区二区三区蜜桃免费 | 欧美www | 国产精一区 | 狠狠操天天干 | 亚洲av无码乱码在线观看性色 | 二区三区偷拍浴室洗澡视频 | 日韩精品成人无码专区免费 | 中国浓毛少妇毛茸茸 | 国产欧美日韩精品在线 | 日批小视频 | av福利网| 精品自拍视频在线观看 | 亚洲91精品 | 天堂资源网 | 亚洲精视频 | 日韩av电影网| 91尤物在线| 天天干天天综合 | 激情高潮呻吟抽搐喷水 | 99热热99 | 美女张开腿让男人桶爽 | 免费av手机在线观看 | 成人欧美一区二区三区黑人动态图 | 中文字幕av资源 | 久久久久久久女国产乱让韩 | 中文字幕不卡视频 | 国产视频在线观看网站 | 好av| 麻豆一区产品精品蜜桃的特点 | 人人爽久久涩噜噜噜网站 | 男人天堂视频网 | youjizz亚洲| 色一涩| 在线免费一区二区 | 国产人成精品 | 制服下的诱惑暮生 | 欧美国产中文 | 乱老熟女一区二区三区 | 性欧美精品| 91国内| 婷婷激情五月综合 | 黄色网占 | 琪琪电影午夜理论片八戒八戒 | 久久精品视频一区 | 色吧婷婷 | 免费av小说 | 久久久丁香 | 成人国产精品免费 | 国产激情无套内精对白视频 | 久久久久久欧美精品se一二三四 | 好吊视频一区二区三区四区 | 98精品视频 | 污污网址在线观看 | 亲子乱aⅴ一区二区三区 | 日韩欧美性视频 | 色呦呦| 国产精品12区 | 天堂网站 | 一区二区成人在线 | 飘花影院伦理片 | 亚洲国产天堂 | 亚洲一二三四在线 | 影音先锋激情 | 午夜毛片在线观看 | 国产精品久久久久电影 | 国产二区三区 | 老司机综合网 |