贪心算法—Problem N
来源:互联网 发布:相对湿度算法 编辑:程序博客网 时间:2024/05/02 08:16
贪心算法—Problem N
题意
某公司要统计全年盈利状况,对于每一个月来说,如果盈利则盈利s,如果亏空则亏空d。公司每五个月进行一次统计,全年共统计8次(1-5、2-6、3-7、4-8、5-9、6-10、7-11、8-12),已知这8次统计的结果全部是亏空(盈利-亏空<0)。题目给出每月的S和D,判断全年是否能盈利,如果能则求出盈利的最大值,如果不能盈利则输出Deficit。
解题思路
一共统计了8次,8次都是亏空的,要保证尽量盈利。所以把亏空放到5月份,这时有一个月亏空四个月盈余,如果不能保证1-5月总额亏空,再在4月亏空,这时两个月亏空三个月盈余···以此类推,直到1-5月亏空,这时全年必亏空。6-10月和1-5月相同,复制即可。最后根据输入情况判断输出最大盈余或者Deficit。
感想
刚开始看不懂题意,借助翻译工具仔细查看后才明白题意,分析一下,和数学题差不多,只是加入了贪心思想,使问题看起来复杂了些。
AC代码
#include<iostream>
using namespace std;
int main()
{
int s,d,res;
while(cin>>s>>d)
{
if (d > 4 * s) res = 10 * s -2 * d;
else if (2 * d > 3 * s) res =8 * s - 4 * d;
else if (3 * d > 2 * s) res =6 * s - 6 * d;
else if (4 * d > s) res = 3 *s - 9 * d;
else res = -12 * d;
if (res <= 0) cout<<"Deficit"<<endl;
else cout<<res<<endl;;
}
return 0;
}
- 贪心算法—Problem N
- 贪心算法—Problem A
- 贪心算法—Problem E
- 贪心算法—Problem C
- 贪心算法—Problem G
- 贪心算法—Problem Q
- 贪心算法—Problem F
- 贪心算法—Problem M
- 贪心算法—Problem K
- 贪心算法—Problem R
- 贪心算法—Problem P
- 贪心算法—Problem O
- 贪心算法—problem j
- 贪心算法 Problem N 1013 求最大盈利
- 贪心算法—Problem B&I
- 贪心算法 problem M
- Activity Selection Problem 贪心算法
- 贪心算法 Problem A 1000
- Android Studio动态模板——少写即多写
- Java中参数传递是值传递,还是引用传递
- Thickbox。js
- oracle存储过程,IN OUT 类型的参数
- ui.dialog.js
- 贪心算法—Problem N
- Ubuntu使用记录——1.软件安装
- 设置光标位置
- jedisPool.getResource()方法长时间无响应并且不报错
- 转:Java中用HttpsURLConnection访问Https链接的问题
- 字符编码
- java.lang.NoSuchMethodError: javax.xml.ws.WebFault.messageName()Ljava/lang/Strin
- struts2 ognl java.lang.NoSuchMethodException Ljava.lang.String
- WSServletContextListener jax-ws 源码分析