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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

洛谷——P2095 营养膳食

發(fā)布時間:2025/3/15 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 洛谷——P2095 营养膳食 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

題目描述

Mr.L正在完成自己的增肥計劃。

為了增肥,Mr.L希望吃到更多的脂肪。然而也不能只吃高脂肪食品,那樣的話就會導(dǎo)致缺少其他營養(yǎng)。Mr.L通過研究發(fā)現(xiàn):真正的營養(yǎng)膳食規(guī)定某類食品不宜一次性吃超過若干份。比如就一頓飯來說,肉類不宜吃超過1份,魚類不宜吃超過1份,蛋類不宜吃超過1份,蔬菜類不宜吃超過2份。Mr.L想要在營養(yǎng)膳食的情況下吃到更多的脂肪,當(dāng)然Mr.L的食量也是有限的。

輸入輸出格式

輸入格式:

第一行包含三個正整數(shù)n(n≤200),m(m≤100)和k(k≤100)。表示Mr.L每頓飯最多可以吃m份食品,同時有n種食品供Mr.L選擇,而這n種食品分為k類。第二行包含k個不超過10的正整數(shù),表示可以吃1到k類食品的最大份數(shù)。接下來n行每行包括2個正整數(shù),分別表示該食品的脂肪指數(shù)ai和所屬的類別bi,其中ai≤100,bi≤k。

輸出格式:

包括一個數(shù)字即Mr.L可以吃到的最大脂肪指數(shù)和。

輸入輸出樣例

輸入:

6 6 3 3 3 2 15 1 15 2 10 2 15 2 10 2 5 3
輸出: 60

其實是一個大水題,難點在于怎樣理解題目,開始的時候我感覺應(yīng)該是每一種菜可以隨便選,但是這種菜的選擇的個數(shù)有限,但是這樣做的會就會被樣例直接卡死。然后我就感覺是不是思路出錯了啊,結(jié)果果真是思路除了問題。
這個題假如我們有5種菜屬于第2個種類吧且第二種菜可以選3個,那么我們只能在這五種菜中選擇3個
#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #define N 505 using namespace std; int n,m,k,x,s[N],sum,ans; int read() {int x=0,f=1; char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}while(ch>='0'&&ch<='9') x=x*10+ch-'0',ch=getchar();return x*f; } struct Node {int w,num; }node[N]; int cmp(Node a,Node b) {return a.w>b.w; } int main() {m=read(),n=read(),k=read();for(int i=1;i<=k;i++)s[i]=read();for(int i=1;i<=m;i++){node[i].w=read();node[i].num=read();}sort(node+1,node+1+m,cmp);for(int i=1;i<=m;i++){if(s[node[i].num]){s[node[i].num]--;n--;ans+=node[i].w;}if(n==0) break;}printf("%d",ans);return 0; }

?

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

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的洛谷——P2095 营养膳食的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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