A公司的烦恼

Description

A公司的电脑管理系统受到了千年虫病毒的攻击,A公司因此丢失了向MS公司做年终汇报的数据。

A公司目前掌握的数据是MS公司每次公布的公司盈亏报表,而MS公司公布盈亏的方式与众不同,它每次都是将连续5个月的盈或亏得总和做一次性的公布,因此A公司不知道每个月具体的盈亏状况。已知的情况是所有盈利月盈利固定为s,而亏损月亏损固定为d。

写一个程序,确定MS公司是否盈利,若盈利的话,那么可能的盈利最大值是多少。

Input

输入为两个正整数s和d。

Output

对于每一组的输入数据,若盈利的话,那么输出可能的盈利最大值是多少;若亏损的话,输出Deficit。

Sample Input

59 237
375 743
200000 849694
2500000 8000000

 

Sample Output

116
28
300612
Deficit

 

算法分析:

1.对于输入的两个值,要分析在连续的5个月里面,最多能有几个月盈利后该阶段盈利;这样就能判断一年里最多有几个月是盈利的;

2.一年共12个月,对于前十个月的处理可以按照上面的来,对于剩下的两个月只能按照最理想状态来分析。

 

代码:

#include<stdio.h>
#include<stdlib.h>


int main()
{
    int s,d;
    while(scanf("%d%d",&s,&d)!=EOF)
    {
         int i,sum;
         for(i=0; i<5; i++)
                if( s*(5-i) - d*i < 0)        
                         break;

         //如果有四个月亏损,则在考虑剩下的月份时另算
         if(i==4)
            sum = 3*s - 9*d;   
         else  //默认剩下的两个月是盈利的
            sum = s*(12-2*i) - d*2*i;
           //如果每个月都亏损或者计算一年的利润亏损则输出亏损


         if( i==5 || sum<0 )
                         printf("Deficit/n");
         else
                         printf("%d/n",sum);           
                                
    }
    system("pause");
    return 0;
}

你可能感兴趣的:(算法,System,input,报表,output)