牛客练习赛7
退役不退坑,以后還是要每周打一場(chǎng)比賽,訓(xùn)練思維了。
?
看來(lái)是很久沒(méi)敲競(jìng)賽代碼了,很生疏了。其余幾題明天再填~~~
在Alice和Bob?前的是兩個(gè)骰?,上?分別寫(xiě)了六個(gè)數(shù)字。 Alice和Bob輪流丟擲骰?,Alice選擇第?個(gè)骰?,?Bob選擇第?個(gè),如果 誰(shuí)投擲出的數(shù)更?,誰(shuí)就可以獲勝。? 現(xiàn)在給定這兩個(gè)骰?上的6個(gè)數(shù)字,你需要回答是Alice獲勝?率更?,還是 Bob獲勝?率更?。(請(qǐng)注意獲勝?率相同的情況)輸入描述:
第???個(gè)數(shù)T,表?數(shù)據(jù)個(gè)數(shù)。接下來(lái)的每?組數(shù)據(jù)?共有2?,每??有6個(gè)正整數(shù),第??是第?個(gè)骰 ?上的6個(gè)數(shù),第??是第?個(gè)骰?上的6個(gè)數(shù)。
輸出描述:
輸出T?,每??個(gè)字符串。如果Alice獲勝?率更?,你需要輸出Alice;
如果Bob獲勝?率更?,你需 要輸出Bob;如果獲勝?率?樣?,你需要輸出Tie.
#include <bits/stdc++.h>using namespace std;int a[6]; int b[6];int main() {int t;scanf("%d",&t);while(t--) {for(int i = 0; i < 6; i++)scanf("%d",&a[i]);for(int i = 0; i < 6; i++)scanf("%d",&b[i]);int cnt1 = 0;int cnt2 = 0;for(int i = 0; i < 6; i++) {for(int j = 0; j < 6; j++) {if(a[i]>b[j]) {cnt1++;}if(a[i]<b[j]) {cnt2++;}}}if(cnt1>cnt2)puts("Alice");else if(cnt1<cnt2)puts("Bob");else puts("Tie");}return 0; } View Code
?
題目描述
在上海市青少年活動(dòng)中?的附近,有?家糖果專(zhuān)賣(mài)店。(別找了,不存在 的) 這家糖果店將會(huì)在每天出售?些糖果,它每天都會(huì)?產(chǎn)出m個(gè)糖果,第i天的第j個(gè)糖果價(jià)格為C[i][j]元。? 現(xiàn)在的你想要在接下來(lái)的n天去糖果店進(jìn)?選購(gòu),你每天可以買(mǎi)多個(gè)糖果, 也可以選擇不買(mǎi)糖果,但是最多買(mǎi)m個(gè)。(因?yàn)樽疃嘀?產(chǎn)m個(gè))買(mǎi)來(lái)糖果以 后,你可以選擇吃掉糖果或者留著之后再吃。糖果不會(huì)過(guò)期,你需要保證這n天 中每天你都能吃到?少?個(gè)糖果。 這家店的?板看你經(jīng)常去光顧這家店,感到?常??。(因?yàn)樗荒芎煤?睡覺(jué)了)于是他會(huì)額外的要求你?付點(diǎn)錢(qián)。具體來(lái)說(shuō),你在某?天購(gòu)買(mǎi)了 k 個(gè) 糖果,那么你在這?天需要額外?付 k2?的費(fèi)?。? 那么問(wèn)題來(lái)了,你最少需要多少錢(qián)才能達(dá)成??的?的呢?輸入描述:
第??兩個(gè)正整數(shù)n和m,分別表?天數(shù)以及糖果店每天?產(chǎn)的糖果數(shù)量。接下來(lái)n?(第2?到第n+1?),每?m個(gè)正整數(shù),第x+1?的第y個(gè)正整數(shù) 表?第x天的第y個(gè)糖果的費(fèi)?。
輸出描述:
輸出只有?個(gè)正整數(shù),表?你需要?付的最?費(fèi)?。備注:
對(duì)于100%的數(shù)據(jù),1 ≤ n, m ≤ 300 , 所有輸?的數(shù)均 ≤ 106。d[i][j] : 前 i 天,買(mǎi) j 個(gè)物品的最小花費(fèi)。
注意剪枝:
#include <bits/stdc++.h>using namespace std;int c[305][305]; int d[305][305];int main() {//freopen("in.txt","r",stdin);int n,m;scanf("%d%d",&n,&m);for(int i = 1; i <= n; i++) {for(int j = 1; j <= m; j++) {scanf("%d",&c[i][j]);}sort(c[i]+1,c[i]+m+1);for(int j = 1; j <= m; j++)c[i][j] = c[i][j-1] + c[i][j];}memset(d,0x3f3f3f3f,sizeof(d));for(int i = 1; i <= n; i++)d[i][0] = 0;for(int j = 1; j <= m; j++)d[1][j] = j*j + c[1][j];for(int i = 2; i <= n; i++) {for(int j = i; j <= i*m; j++) {d[i][j] = d[i-1][j];if(j>=n*2) break;for(int k = 1; k <= m; k++) {if(j-k>=i-1)d[i][j] = min(d[i][j],(k*k+d[i-1][j-k]+c[i][k]));}}}int ans = 0x3f3f3f3f;//for(int j = n; j<= n*m; j++)ans = min(ans,d[n][n]);printf("%d\n",ans);return 0; } View Code?
轉(zhuǎn)載于:https://www.cnblogs.com/TreeDream/p/7944579.html
總結(jié)
- 上一篇: TP框架中内置查询IP函数
- 下一篇: centos7下端口映射