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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

2016 China Collegiate Programming Contest Final

發布時間:2025/3/17 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2016 China Collegiate Programming Contest Final 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2016 China Collegiate Programming Contest Final

Table of Contents 2016 China Collegiate Programming Contest FinalProblem A:Problem J:Problem H:

Problem A:

題意:喝咖啡,每三杯就又可以有免費一杯,求最少花費;

分析:貪心;

#include <bits/stdc++.h>using namespace std;const int inf = 0x3f3f3f3f; const int maxn = 100000+5; int a[maxn];int main() {int t;scanf("%d",&t);int kase = 0;while(t--) {int n;scanf("%d",&n);int sum = 0;for(int i=0;i<n;i++) {scanf("%d",&a[i]);sum +=a[i];}sort(a,a+n);for(int i=n-3;i>=0;i-=3)sum-=a[i];printf("Case #%d: %d\n",++kase,sum);}return 0; }

Problem J:

題意:題意很長,CCPC比賽規則,給出一個隊伍,看他是否能進WF,CCPC分兩個部分,X 是從五大賽區中選X個,Y是在EC比賽中選Y個,X+Y = G,G是確定的,然后調整X,Y使得給出的這個隊伍恰好不能進WF時的最小Y,要是無論怎么調整XY,都能進WF,輸出ADVANCED!

分析:g<=20 記錄兩種規則中的這個隊伍的排名k,kk,枚舉x,y即可;

#include <bits/stdc++.h>using namespace std;string a1[25],a2[25],a3[25],a4[25],a5[25]; string ec[25];int main() {//freopen("in.txt","r",stdin);int kase = 1;int t;scanf("%d",&t);while(t--){int g;scanf("%d",&g);string ans;cin>>ans;for(int i=0; i<20; i++)cin>>a1[i];for(int i=0; i<20; i++)cin>>a2[i];for(int i=0; i<20; i++)cin>>a3[i];for(int i=0; i<20; i++)cin>>a4[i];for(int i=0;i<20;i++)cin>>a5[i];for(int i=0; i<20; i++)cin>>ec[i];int k = 1;set<string> s;bool flag = false;for(int i=0; i<20; i++){for(int j=0; j<5; j++){if(j==0){if(ans==a1[i]){flag = true;break;}else if(!s.count(a1[i])){s.insert(a1[i]);k++;continue;}}if(j==1){if(ans==a2[i]){flag = true;break;}else if(!s.count(a2[i])){s.insert(a2[i]);k++;continue;}}if(j==2){if(ans==a3[i]){flag = true;break;}else if(!s.count(a3[i])){s.insert(a3[i]);k++;continue;}}if(j==3){if(ans==a4[i]){flag = true;break;}else if(!s.count(a4[i])){s.insert(a4[i]);k++;continue;}}if(j==4){if(ans==a5[i]){flag = true;break;}else if(!s.count(a5[i])){s.insert(a5[i]);k++;continue;}}}if(flag)break;}int kk = 1;for(int i=0;i<20;i++) {if(ans==ec[i])break;else if(!s.count(ec[i])) {kk++;s.insert(ec[i]);}}int yy = -1;for(int i=0;i<=g;i++) {int x = g-i;int y = i;if(x<k&&y<kk){yy = y;break;}}if(yy==-1)printf("Case #%d: ADVANCED!\n",kase++);else printf("Case #%d: %d\n",kase++,yy);}return 0; }

Problem H:

題意:n個工程項目,m 個工程師,工程師會一些項目,每一個工程項目需要一些工程項目,每個工程師只能去一個工程,求最多能完成多少個工程項目;

分析:n,m<=10 可以考慮集合上DP,考慮每一個工程師選或不選,但是不能直接用人數狀態去循環遍歷可以完成哪些項目;要優化,預處理,第i個項目,有哪些人數狀態可以完成,然后dp的時候,只要考慮這兩個集合是否有包含關系,改成了一重循環;

tip: 值得注意的是,最后的結果不是max(dp(i,(1<<m)-1)) ,而是人數的s狀態要考慮。

#include <bits/stdc++.h>using namespace std;int c[20][10],d[20][10]; int p[120];int dp[20][1<<11];int main() {int t;int n,m;scanf("%d",&t);int kase = 1;while(t--){scanf("%d%d",&n,&m);vector<int> a[20];memset(dp,0,sizeof(dp));for(int i=1; i<=n; i++){scanf("%d",&c[i][0]);for(int j=1; j<=c[i][0]; j++)scanf("%d",&c[i][j]);}for(int i=0; i<m; i++){scanf("%d",&d[i][0]);for(int j=1; j<=d[i][0]; j++)scanf("%d",&d[i][j]);}for(int i=1; i<=n; i++){for(int s=0; s<(1<<m); s++){int cnt=0;memset(p,0,sizeof(p));for(int k=0; k<m; k++){if(s&(1<<k)){cnt++;for(int j=1; j<=d[k][0]; j++)p[d[k][j]]=1;}}int flag=1;for(int j=1; j<=c[i][0]; j++)if(p[c[i][j]]==0) flag=0;if(flag) a[i].push_back(s); //第i個項目,有哪些人完成}}for(int i=1; i<=n; i++){for(int s=0; s<(1<<m); s++){for(int j=0; j<a[i].size(); j++){if((s|a[i][j])==s){dp[i][s]=max(dp[i-1][s-a[i][j]]+1,dp[i][s]);}}dp[i][s]=max(dp[i][s],dp[i-1][s]);}}printf("Case #%d: %d\n",kase++,dp[n][(1<<m)-1]);}return 0; }

轉載于:https://www.cnblogs.com/TreeDream/p/7137556.html

總結

以上是生活随笔為你收集整理的2016 China Collegiate Programming Contest Final的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 老熟妇仑乱视频一区二区 | 亚洲av无码电影在线播放 | 7777av| 日本免费在线一区 | 草草福利视频 | 美痴女~美人上司北岛玲 | 在线综合视频 | 欧美亚一区二区三区 | 日韩午夜一区 | 免费看欧美成人a片无码 | 国产吃瓜黑料一区二区 | av网址网站 | 456亚洲视频 | 亚洲成熟毛多妇女av毛片 | 久啪视频| 亚洲精品国偷拍自产在线观看蜜桃 | 久久国产精品无码一区二区 | 999www| 国产精品污污 | 久草资源在线播放 | 99色在线 | 欧美深夜福利 | 嫩草视频在线观看免费 | 韩国理论午夜 | 中日韩黄色片 | www.欧美色图 | 亚洲免费观看高清 | 日本视频在线观看 | 九色porny视频 | 久久精品aaaaaa毛片 | 神马久久网站 | 伊人久久大香 | 亚洲av无码乱码国产麻豆 | 欧美日韩二三区 | 强行挺进白丝老师翘臀网站 | 中文字幕一区二区三区在线视频 | 91调教打屁股xxxx网站 | 欧美日韩一区二区三区在线播放 | 在线观看麻豆av | 色无极亚洲影院 | 中文字幕免费高 | 91视频在线免费观看 | 在线免费观看麻豆 | 天天摸天天 | 亚洲视频在线免费播放 | 99爱在线视频| 日韩福利视频网 | 一区二区在线 | 人人爱人人看 | 天天插天天爽 | 日日躁夜夜躁白天躁晚上躁91 | 91小视频在线 | 欧美一级免费黄色片 | 91视频在线观看网站 | 亚洲精品成人av | 天天操天天爱天天干 | 最新中文字幕av | 免费看成人片 | 一级性生活大片 | 欧美大片91 | 国产第一草草影院 | 成人精品视频99在线观看免费 | 一本久道久久 | 亚洲自啪 | 少妇一区二区三区四区 | 黄色av成人 | 性欧美ⅴideo另类hd | 亚洲好看站 | 精品一区二区亚洲 | 黄色片播放器 | 色呦呦中文字幕 | 精品国产乱码久久久久久88av | av永久| 美女福利影院 | 日日夜夜操视频 | 奇米精品一区二区三区在线观看 | av一区二区三区在线 | 亚洲午夜无码久久久久 | 在线播放国产一区 | 天天摸天天做天天爽水多 | www国产视频 | 亚洲伊人久久综合 | 欧美视频性 | 日韩大片免费 | 久久久精品中文字幕麻豆发布 | 日韩少妇内射免费播放18禁裸乳 | 免费成人深夜小野草 | 天堂资源地址在线 | av老司机在线观看 | 日韩三级久久 | 亚洲人午夜射精精品日韩 | 天天摸日日干 | 免费久久一级欧美特大黄 | 日日影院| 饥渴放荡受np公车奶牛 | 国产精品久久久久久久久免费软件 | 精品乱码一区二区三区 | 色爱色| 女人下面流白浆的视频 |