题目衔接:http://poj.org/problem?id=2586
题目大意:我是上网查了之后才明白的。题目的关键在于,财报的发布是5个月一次,而且每个月的盈余和赤字的两个数据是一样的,且题目中的条件为每5个月的财报都是赤字,可以根据下图理解:
根据贪心策略,肯定是盈余的月数越多,总的盈余越大,则最好的情况就是每5个月中有一个月赤字(1/5),选取图中任意同颜色的一对即可,依次为2/5,3/5,4/5,其它情况则为赤字。代码如下:
#include <iostream>
using namespace std;
int main()
{
int s, d;
while(cin>>s>>d)
{
if(s*4 - d < 0)
if(s*10 - d*2 > 0) cout<<s*10 - d*2;
else cout<<"Deficit"<<endl;
else if(s*3 - d*2 < 0)
if(s*8 - d*4 > 0) cout<<s*8 - d*4;
else cout<<"Deficit"<<endl;
else if(s*2 - d*3 < 0)
if(s*6 - d*6 > 0) cout<<s*6 - d*6;
else cout<<"Deficit"<<endl;
else if(s - d*4 < 0)
if(s*3 - d*9 > 0) cout<<s*3 - d*9;
else cout<<"Deficit"<<endl;
else cout<<"Deficit""<<endl;
}
return 0;
}