poj2586

千年虫病毒
一个财务公司受到电脑病毒攻击所以丢失了一部分年终财务的数据。
他们所有记得的东西都在 Inc里面储存着,在1999年之前公司要每个月都贴出盈利和亏损情况。亏损的是d,由于收到了攻击,他们不记得那个月盈利或者亏损多少,和其他的公司不一样,他们的员工一年中是连续五个月发一次薪水??(确实没见过),acm知道8条交易的亏损记录但是他们不知道是多少,总会计师几乎确保知道这个月将要发布1999年的盈余。

对于每一个月来说,是盈利如果则盈利S,如果亏空则亏d。 每五个月进行一次统计,共统计八次(1-5月一次,2-6月一次.......) 统计的结果是这八次都是亏空。 问题:判断全年是否能盈利,如果能则求出最大的盈利。 如果不能盈利则输出Deficit

我明白了,深搜肯定是可以的,不过这可是贪心- -,好吧再行一想,要使每五个月都亏损,那么就让这些亏损的月份在后面更有利,作用更广。
1-5原来是相同的11==1,12==2即可

想法没有错!!

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

  #include<stdio.h>

  int main()
 {
      long  long s, d;
      while(scanf( " %I64d%I64d ", &s, &d) != EOF)
     {
          int k= 0;
          for(k= 1; k<= 5; k++)
         {
              if(k*d > s*( 5-k))
                 break;
         }
         k =  5-k;
          if(k ==  1)
            k =  3;
          else  if(k >  1)
            k = k+k+ 2;
          if(s*k - d*( 12-k) >  0)
            printf( " %d\n ", s*k - d*( 12-k));
          else
            printf( " Deficit\n ");
     }
      return  0;
 }

 

你可能感兴趣的:(poj)