现在的位置: 首页 > 综合 > 正文

poj2586 Y2K Accounting Bug

2017年11月16日 ⁄ 综合 ⁄ 共 681字 ⁄ 字号 评论关闭

坑爹的题目呀 ,死活读不懂!!!参照别人的解说,才搞明白 题意,一个公司,每个月要么亏损d,要么盈利s,每年连续五个月统计一次,每年统计8次,某年因为事故数据丢失,只知道统计的8次都是亏损,但是不知道几月亏损,亏损多少。给你s和d,如果年终盈利,求盈利的最大数,如果亏损,输出Deficit。

分析:分5中情况讨论:(5-i)*s-i*d<0;   i 从枚举到4,

i=1:    SSSSDSSSSDSS       ans=10*s-2*d;

i=2:    SSSDDSSSDDSS      ans=8*s-4*d;

i=3:   SSDDDSSDDDSS      ans=6*(s-d);

i=4:   SDDDDSDDDDSD    ans=3*s-9*d;

i=5:   DDDDDDDDDDDD   ans=-12*d;

#include<iostream>
#include<cstdio>
using namespace  std;
int main()
{
    int s,d;
while(scanf("%d %d",&s,&d)!=EOF)
{
int i,ans;
for(i=1;i<5;i++)
if((5-i)*s-i*d<0)
break;
switch(i)
{
case 1:ans=10*s-2*d;break;
case 2:ans=8*s-4*d;break;
case 3:ans=6*s-6*d;break;
case 4:ans=3*s-9*d;break;
default:ans=-12*d;break;
}
if(ans<0)
cout<<"Deficit"<<endl;
else 
cout<<ans<<endl;
}
return 0;
}

抱歉!评论已关闭.