Codeforces Round #622 (Div. 2) A题【Fast Food Restaurant】题解

博客介绍了Codeforces Round #622 (Div. 2) A题Fast Food Restaurant的解题思路和代码实现。题目要求在每个人都至少选择一份食物(A、B、C中的一种)的情况下,求最多能分配给多少人。解决方案包括打表、暴力求解和动态规划方法。
摘要由CSDN通过智能技术生成

在我的博客食用效果更佳!https://www.cbw2007.tk/articles/CF-622-div2-A-sol/,更多见在不同的网站浏览本站内容

原题链接:Problem - A - CodeforcesCF1313A Fast Food Restaurant - 洛谷 | 计算机科学教育新生态

简化题意

一共有3种食物A、B、C,每一种食物可以选至多1个或不选(也就是说要么不拿,要么只拿一个)。现在已知A,B,C各有多少份,在每个人都至少要拿任意一份食物时,问最多能派发给多少人。

思路

  1. 打表,因为数据范围小,勉勉强强还行
  2. 暴力,数据范围小,也比较简单
  3. 动规,这也是我们的重头戏

没错,动规!这道题其实可以看做多维费用背包(没见过的可以去OI-wiki恶补一下:Link),有3种东西,饭店持有的数量可以看做背包容量,而物品就需要枚举一下所有可能性,最后看最多能选多少物品。

代码

#include<iostream>
#include<cstring>
using namespace std;
int cost[7][3]={
   {
   1,0,0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值