POJ 2586(贪心)

题目链接:http://poj.org/problem?id=2586


题意:(这个题看了大半天没看懂是什么意思)

对于MS Inc来说,每个月如果盈利则必盈利sur,如果亏空则必亏空def(这个公司很怪)。它每五个月进行一次统计,共统计八次(1-5月一次,2-6月一次...)。统计的结果是这八次都亏空。判断MS Inc全年否能盈利,如果能则求出最大的盈利。如果不能则输出"Deficit"。


思路:贪心。

盈利的靠前,亏损靠后,共有五种情况。

①SSSSD

②SSSDD

③SSDDD

④SDDDD

⑤DDDDD

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;

const int maxn=1010;
int s,d;

int main(){
#ifndef ONLINE_JUDGE
	freopen("test.in","r",stdin);
	freopen("test.out","w",stdout);
#endif
    while(~scanf("%d%d",&s,&d)){
    	int surplus=0;
    	if(4*s<d){
    		surplus=10*s-2*d;
    	}
    	else if(3*s<2*d){
    		surplus=8*s-4*d;
    	}
    	else if(2*s<3*d){
			surplus=6*s-6*d;
		}
    	else if(s<4*d){
			surplus=3*s-9*d;
		}
    	else{
    		surplus=-1;
    	}
    	if(surplus>=0)
    		printf("%d\n",surplus);
    	else
    		printf("Deficit\n");
    }
    return 0;
}


你可能感兴趣的:(POJ 2586(贪心))