POJ2586

计算盈亏

1.首先题目没看懂什么意思,搜了搜别人的文章,才弄懂,原来是一年当中连续的5个月都是亏损,这样的情况有1-5,2-6...8-12共有8种情况,求最大盈利,如无法盈利则显示Deficit

2.若盈利最大,则亏损的月份应当尽量少。这时观察五个月中的盈利和亏损月份,如果的d>4s,则说明五个月中需要一个月亏损则可以满足五个月亏损。同理根据d和s的关系

可以求出五个月中最少的亏损月份。然后为亏损月份在一年当中寻找合适的位置,使其能够尽量能够被包含在更多的连续的五个月中。

#include<iostream>
using namespace std;
int main()
{
int d,s;
int sum;
while(cin>>s>>d)
{
if(d>4*s)
{
sum=10*s-2*d;
if(sum>0)
cout<<sum<<endl;
else
cout<<"Deficit"<<endl;
}
else if(d<=4*s&&d>3.0/2*s)
{
sum=8*s-4*d;
if(sum>0)
cout<<sum<<endl;
else
cout<<"Deficit"<<endl;
}
else if(d<=3.0/2*s&&d>2.0/3*s)
{
sum=6*s-6*d;
if(sum>0)
cout<<sum<<endl;
else
cout<<"Deficit"<<endl;
}
else if(d<=2.0/3*s&&d>1.0/4*s)
{
sum=3*s-9*d;
if(sum>0)
cout<<sum<<endl;
else
cout<<"Deficit"<<endl;
}
else
cout<<"Deficit"<<endl;
}
return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值