洛谷 P2095 营养膳食 C语言

server/2025/2/11 4:37:17/

P2095 营养膳食 - 洛谷 | 计算机科学教育新生态

题目描述

Mr.L 正在完成自己的增肥计划。

为了增肥,Mr.L 希望吃到更多的脂肪,然而也不能只吃高脂肪食品,那样的话就会导致缺少其他营养。

Mr.L 通过研究发现:真正的营养膳食规定某类食品不宜一次性吃超过若干份。比如就一顿饭来说,肉类不宜吃超过 1 份,鱼类不宜吃超过 1 份,蛋类不宜吃超过 1 份,蔬菜类不宜吃超过 2 份。

Mr.L 想要在营养膳食的情况下吃到更多的脂肪,当然 Mr.L 的食量也是有限的。

输入格式

第一行包含三个正整数 n,m 和 k。表示 Mr.L 每顿饭最多可以吃 m 份食品,同时有 n 种食品供 Mr.L 选择,而这 n 种食品分为 k 类。

第二行包含 k 个不超过 10 的正整数,表示可以吃 1 到 k 类食品的最大份数。

接下来 n 行每行包括 2 个正整数,分别表示该食品的脂肪指数 ai​ 和所属的类别 bi​。

输出格式

包括一个数字即 Mr.L 可以吃到的最大脂肪指数和。

输入输出样例

输入 #1

6 6 3
3 3 2
15 1
15 2
10 2
15 2
10 2
5 3

输出 #1

60

说明/提示

对于 100% 的数据,1≤n≤200,1≤m≤100,1≤ai​≤100,1≤bi​≤k。

思路:

代码如下:

#include<iostream>
#include<algorithm>
using namespace std;
int n,m,k;
int K[250];
struct Node{int a;int b;
};
bool compare(const Node A ,const Node B )
{return A.a > B.a;
}
Node arr[250];
int cnt;
int main(void)
{cin >> n >> m >> k;for(int i = 1 ; i <= k ; i++)cin >> K[i];for(int i = 1 ; i <= n ; i++){cin >>arr[i].a >> arr[i].b;}sort(arr+1,arr+1+n,compare);
//	for(int i = 1 ; i <= n ; i++)
//	cout << arr[i].a << " " << arr[i].b << '\n';for(int i = 1 ; i <= n ; i++){int t = arr[i].b;if(K[t] && m){K[t]--;m--;cnt += arr[i].a;}}cout << cnt;return 0;
}


http://www.ppmy.cn/server/166661.html

相关文章

青少年编程与数学 02-009 Django 5 Web 编程 03课题、项目结构

青少年编程与数学 02-009 Django 5 Web 编程 03课题、项目结构 一、项目结构项目根目录应用目录其他目录 二、项目设置Django 插件设置项目配置环境变量设置项目目录标记版本控制 三、Django 插件安装 Django 插件配置 Django 插件使用 Django 插件功能 四、扩展插件开发效率插…

未来AI医院蓝图:源码、机器人与数字孪生如何打造智能医疗APP?

在人工智能&#xff08;AI&#xff09;、物联网&#xff08;IoT&#xff09;和大数据技术的推动下&#xff0c;医疗行业正在经历一场深刻的变革。从传统医院到互联网医院&#xff0c;再到智能医疗生态的构建&#xff0c;未来的AI医院不仅能提供更高效的医疗服务&#xff0c;还能…

ProcessingP5js游戏掉落的恐龙蛋

这款游戏是一款趣味十足的物品接取游戏&#xff0c;玩家将扮演一个接物品的角色。游戏的目标是通过控制篮子左右移动&#xff0c;接住从天而降的恐龙蛋和其他物品&#xff0c;积累分数&#xff0c;同时避开掉落的损失道具&#xff0c;确保自己的分数不断增长。 游戏玩法非常简…

OpenGL学习笔记(十二):初级光照:投光物/多光源(平行光、点光源、聚光)

文章目录 平行光点光源聚光多光源 现实世界中&#xff0c;我们有很多种类的光照&#xff0c;每种的表现都不同。将光投射(Cast)到物体的光源叫做投光物(Light Caster)。 平行光/定向光(Directional Light)点光源(Point Light)聚光(Spotlight) 平行光 当一个光源处于很远的地…

ArcGIS中的空值问题

空值是数据的一种特殊状态&#xff0c;当某个字段没有被赋值或者在数据获取、处理过程中数据缺失时就会出现空值。 01、空值的表现形式 【空值】不同于数字型的【零值】或者字符串型的【空格】。 数字型的【零值】是一个确定的数值&#xff0c;表示数量上为0。 字符串型的【…

换电脑了如何快速导出vscode里的插件

当你换电脑了&#xff0c;之前vscode里的插件又不想全部手动重装&#xff0c;那么恭喜你&#xff0c;刷到了这篇文章。 1. 将 VSCode 添加到系统路径 macOS 打开 VSCode。按下 Command Shift P 打开命令面板。 3。 输入 Shell Command: Install ‘code’ command in PATH …

【C语言篇】深入探究 C 语言指针:揭开指针变量与地址的神秘面纱

我的个人主页 我的专栏&#xff1a;C语言&#xff0c;希望能帮助到大家&#xff01;&#xff01;&#xff01;点赞❤ 收藏❤ 目录 引言指针的基础概念 2.1 什么是指针2.2 指针的声明与初始化2.3 指针的存储模型与内存布局 指针的操作 3.1 获取地址与解引用操作3.2 指针的算术…

spring 学习(工厂方式 实例化对象(静态工厂,实例化工厂,实现factorybean 规范))

目录 前言 第一种&#xff1a;静态工厂方式实例化对象 静态工厂的特点 demo(案例&#xff09; 第二种&#xff1a;实例工厂的方式 实例工厂和静态工厂的区别 demo(案例&#xff09; 第三种&#xff1a;实现FactoryBean规范的方式 demo(案例&#xff09; 前言 spring 实…