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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

BestCoder Round #91 1001 Lotus and Characters

發(fā)布時(shí)間:2023/12/13 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 BestCoder Round #91 1001 Lotus and Characters 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=6011

題意:

Lotus有nn種字母,給出每種字母的價(jià)值以及每種字母的個(gè)數(shù)限制,她想構(gòu)造一個(gè)任意長(zhǎng)度的串。 定義串的價(jià)值為:第1位字母的價(jià)值*1+第2位字母的價(jià)值*2+第3位字母的價(jià)值*3…… 求Lotus能構(gòu)造出的串的最大價(jià)值。(可以構(gòu)造空串,因此答案肯定\geq 00)

分析:

做這個(gè)題目的時(shí)候,第一感覺回溯算了,不用想,肯定T了。

1 #include <bits/stdc++.h> 2 3 using namespace std; 4 5 int n; 6 int val[30]; 7 int cnt[30]; 8 int len; 9 10 int dfs(int cur) 11 { 12 int ans = 0; 13 if(cur>=len+1) return 0; 14 else 15 { 16 for(int i=0; i<n; i++) 17 { 18 if(cnt[i]>0) 19 { 20 cnt[i]--; 21 ans = max(ans,(cur+1)*val[i]+dfs(cur+1)); 22 cnt[i]++; 23 } 24 } 25 } 26 return ans; 27 } 28 29 int main() 30 { 31 int t; 32 scanf("%d",&t); 33 34 while(t--) 35 { 36 scanf("%d",&n); 37 len = 0; 38 for(int i=0; i<n; i++) 39 { 40 scanf("%d%d",&val[i],&cnt[i]); 41 len+=cnt[i]; 42 } 43 44 printf("%d\n",dfs(0)); 45 } 46 return 0; 47 }

?

后來(lái)想DP,直覺告訴我,正權(quán)值的放后面。每次計(jì)算后面的數(shù)值,又不知道前面有多少位,怎么解決這個(gè)問(wèn)題呢?

就類似于前綴和,寫一個(gè)后綴和,之前的位數(shù)不確定,怎么解決呢?

Ans[i] = Ans[i+1] + sum[i+1] +v[i];

狀態(tài)轉(zhuǎn)移就是多加了一遍后綴和,和首位。最后找一下最好的切割點(diǎn)。

其實(shí)這個(gè)切割點(diǎn)也可以從后往前找。

1 #include <bits/stdc++.h> 2 3 using namespace std; 4 5 int main() 6 { 7 int t; 8 scanf("%d",&t); 9 while(t--) { 10 int n; 11 scanf("%d",&n); 12 13 vector<int> v; 14 15 for(int i=0;i<n;i++) { 16 int val,cnt; 17 scanf("%d%d",&val,&cnt); 18 for(int i=0;i<cnt;i++) { 19 v.push_back(val); 20 } 21 } 22 23 sort(v.begin(),v.end()); 24 25 int len = v.size(); 26 27 int Ans[10010]; 28 int sum[10010]; 29 30 memset(Ans,0,sizeof(Ans)); 31 memset(sum,0,sizeof(sum)); 32 33 for(int i=len-1;i>=0;i--) { 34 sum[i] = sum[i+1] + v[i]; 35 } 36 37 for(int i=len-1;i>=0;i--) { 38 Ans[i] = Ans[i+1] + sum[i+1] + v[i]; 39 } 40 41 int ans = 0; 42 43 //for(int i=0;i<len;i++) { 44 // ans = max(ans,Ans[i]); 45 //} 46 47 48 for(int i=len-1;i>=0;i--) { 49 if(ans<Ans[i]) 50 ans = Ans[i]; 51 else break; 52 } 53 54 printf("%d\n",ans); 55 } 56 57 return 0; 58 }

?

轉(zhuǎn)載于:https://www.cnblogs.com/TreeDream/p/6339982.html

總結(jié)

以上是生活随笔為你收集整理的BestCoder Round #91 1001 Lotus and Characters的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美一区二区三区久久精品 | 色综合色综合网色综合 | 尤物天堂| 久久a视频 | 天天爱天天射 | 久久精品无码一区二区三区免费 | 四虎影视免费永久观看在线 | 欧美拍拍 | 精品人妻一区二区三区久久 | 曰批免费视频播放免费 | 激情综合小说 | 日韩欧美在线观看一区二区 | 亚洲青青草| 亚洲校园激情 | 亚洲一区二区三区加勒比 | 1000部多毛熟女毛茸茸 | 中文字幕在线免费看线人 | 奇米影视一区二区 | 天堂俺去俺来也www久久婷婷 | 国产999视频 | 黄色精品一区二区 | 免费毛片观看 | 国产专区一区 | 伊人超碰 | 日韩欧美一区二区三区在线观看 | 男人av网站| 国产精品久久久久久免费观看 | 国产孕妇一区二区三区 | 国产亚洲欧美日韩精品一区二区三区 | 网友自拍咪咪爱 | 高中男男gay互囗交观看 | 免费看a级黄色片 | 免费中文字幕日韩欧美 | 久久精品电影网 | 饥渴放荡受np公车奶牛 | 九九九热精品 | 99久久人妻精品免费二区 | 久久久久久九九九九九 | 国产一卡二卡三卡四卡 | 色老汉视频| 日av在线播放 | 办公室大战高跟丝袜秘书经理ol | 久精品在线观看 | www.com操| 国产系列在线 | 国产一区91| 成人av专区 | 欧美一区二区三区四区在线观看 | 亚洲玖玖玖 | 99re这里只有精品66 | 国产午夜精品在线 | 天堂资源在线观看 | 精品九九九九 | 欧美大尺度床戏做爰 | 国产精品中文 | 国产又大又粗又爽的毛片 | 69av网| 国产色拍| 亚洲av色区一区二区三区 | 亚洲精品男人天堂 | 国产精品污| www久久99| 修仙淫交(高h)h文 | 亚洲精品性| 亚洲综合视频在线观看 | 免费在线观看一区二区三区 | 欧美xxxxbbbb| 少妇脚交调教玩男人的视频 | av网站地址 | 韩国色网 | 黄色avv| 中文精品一区二区三区 | 人人插人人干 | 免费一级黄色片 | 96av在线视频 | 亚洲小说春色综合另类 | 梦梦电影免费高清在线观看 | 亚洲人成无码www久久久 | 少妇全黄性生交片 | 特大黑人娇小亚洲女mp4 | 91香蕉国产 | 变态另类ts人妖一区二区 | 九九视频免费观看 | 韩国三级av | 九九热视频精品在线观看 | 国产高清久久 | 国产精品第七页 | 高潮无码精品色欲av午夜福利 | 久操热| 97在线看 | 亚洲热av | 成品人视频ww入口 | 日韩男人的天堂 | 国产一区二区三区毛片 | 亚洲中文字幕无码av永久 | 久久久久久国产精品免费 | 一区在线免费观看 | 日韩高清在线播放 | 伦伦影院午夜理论片 |