CF912A
2024-09-08 02:58:49
题意
你手里有 A 个黄水晶和 B 个蓝水晶,其中两个黄水晶可以造一个黄水晶球,三个蓝水晶可以造一个蓝水晶球,一黄一蓝两个水晶可以造一个绿水晶球。
现在你需要 x 个黄水晶球,y 个绿水晶球,z 个蓝水晶球,问你总共还需要多少个水晶能满足要求。
分析
反向考虑,既然 黄水晶 * 2 = 黄水晶球,黄水晶 + 蓝水晶 = 绿水晶球,蓝水晶 * 3 = 蓝水晶球;
那你总共需要的水晶数tot = x * 2 + y + z * 3 + y;
但是并不能直接拿 tot 与 A+B 的大小进行比较,因为可能你黄水晶不够,但蓝水晶很多,导致 A+B >= tot 但是仍然需要水晶的情况发生,所以就需要单独判断;
代码呐
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <cstring>
#define maxn 110
#define maxm 500
using namespace std;
long long a,b,x,y,z,ans;
int main(){
cin>>a>>b>>x>>y>>z;
if(x*2+y<=a &&z*3+y<=b){
cout<<0;
return 0;
}
if(x*2+y>a) ans+=x*2+y-a;
if(z*3+y>b) ans+=z*3+y-b;
cout<<ans;
return 0;
}
题解虽短但也用心,不喜勿喷,谢谢啦。
最新文章
- 记录一则数据库连接故障ORA-12560,ORA-12518
- Node.js-部署【1】-防火墙端口的配置
- kernel/info.c
- 区分DPI、分辨率(PPI)、图像的物理大小、像素宽度
- Linux系统(X64)安装Oracle11g完整安装图文教程另附基本操作
- MVC-READ5(asp.net web from PK asp.net MVC)
- hdu 5719 BestCoder 2nd Anniversary B Arrange 简单计数问题
- C#下的 Emgu CV
- Linux企业级项目实践之网络爬虫(7)——DNS解析
- PreTranslateMessage和TranslateMessage区别(转)
- 得到一个div下 特定ID的所有标签
- hdu_5690_All X(找循环节)
- KoaHub.js:使用ES6/7特性开发Node.js框架
- 活动页怎么切图photoshop
- 3. python文件操作
- 微信小程序+“芝麻小客服”可设自动关注公众号,助力运营闭环
- 朱晔的互联网架构实践心得S1E1:Pilot
- ansible结合zabbix_api批量添加主机
- django--admin组件
- Programming 2D Games 读书笔记(第二章)