`

算法复习之贪心算法poj2586

 
阅读更多

题意:对于MS Inc来说,每个月如果盈利则必盈利sur,如果亏空则必亏空def(这个公司很怪)。它每五个月进行一次统计,共统计八次(1-5月一次,2-6月一次...)。统计的结果是这八次都亏空。判断MS Inc全年否能盈利,如果能则求出最大的盈利。如果不能则输出"Deficit"。
 
思路:贪心,符合最优子结构性质。5个月统计一次都亏空,那么有5种情况:
      1、若SSSSD亏空,那么全年可能最大盈利情况为: SSSSDSSSSDSS
      2、若SSSDD亏空,那么全年可能最大盈利情况为:SSSDDSSSDDSS
      3、若SSDDD亏空,那么全年可能最大盈利情况为: SSDDDSSDDDSS
      4、若SDDDD亏空,那么全年可能最大盈利情况为: SDDDDSDDDDSD
      5、若DDDDD亏空,那么全年可能最大盈利情况为: DDDDDDDDDDDD

 

代码如下:

 

#include <iostream>
using namespace std;

int main()
{
	int s,d,ans;
	while (scanf("%d%d",&s,&d)!=EOF)
	{
		if(4*s<d)
			ans=10*s-2*d;
		else if(3*s<2*d)
			ans=8*s-4*d;
		else if(2*s<3*d)
			ans=6*s-6*d;
		else if(s<4*d)
			ans=3*s-9*d;
		else
			ans=-12*d;
		if(ans>0)
			printf("%d\n",ans);
		else
			printf("Deficit\n");
	}
	return 0;
}

 

 

分享到:
评论

相关推荐

    POJ算法题目分类

    * 贪心:贪心算法是指通过选择当前最优的解来解决问题的方法,如 poj1328、poj2109、poj2586。 * 递归和分治法:递归和分治法是指将问题分解成多个小问题,通过解决小问题来解决大问题,如 poj3295。 * 递推:递推是...

    田忌赛马: POJ 2287(贪心解法)

    贪心算法是一种在每一步选择中都采取当前状态下最好或最优(即最有利)的选择,从而希望导致结果是全局最好或最优的算法。在POJ 2287题中,我们需要通过贪心策略来解决赛马比赛的胜负问题。 首先,我们来看一下题目...

    poj acm 题解 算法

    通过阅读和分析这些题解,学习者能够接触到动态规划、图论、贪心算法、分治策略、回溯法、搜索算法等多种算法,并提升自己的编程和问题解决能力。同时,这些解题思路和代码实现也能帮助学习者在遇到类似问题时迅速...

    poj算法题目实现.zip_algorithm_arrangement4hv_conditionyis_poj problems

    这可能需要用到贪心算法(Greedy Algorithm)或者深度优先生成树(Depth First Search Tree)来枚举所有可能的操作序列,找到满足条件的最少操作数。 以上五个题目涵盖了图论、动态规划、回溯法、数论和贪心算法等...

    poj1087贪心算法实验报告

    在这个实验报告中,poj1087 题目就是一个典型的贪心算法应用实例。 题目描述了一个工厂需要将不同尺寸的产品(1*1 到 6*6)使用6*6的包裹进行包装,目标是最小化所需的包裹数量。贪心策略在此问题中的应用是逐个...

    北大POJ初级-基本算法

    5. **贪心算法**:对于一些局部最优的选择可以导致全局最优解的问题,如霍夫曼编码、Prim算法和Kruskal算法等。 6. **图论算法**:包括图的遍历(深度优先搜索和广度优先搜索)、最短路径问题(Dijkstra算法、Floyd...

    ACM-POJ 算法训练指南

    2. **搜索**:涉及广度优先搜索(BFS)和深度优先搜索(DFS)(poj1328, poj2109, poj2586),是解决图问题的关键。 3. **贪心算法**:通过局部最优选择来达到全局最优解的方法,如背包问题(poj3295)。 4. **动态...

    POJ 1129-Channel Allocation 的贪心算法解法(图的m着色问题)

    标题“POJ 1129-Channel Allocation”的问题是一个典型的图论问题,涉及到贪心算法和图的m着色问题。在这个问题中,我们假设有一个通信网络,其中的节点代表基站,每个基站需要分配一个频道来传输信号,而两个相邻的...

    ACMer需要掌握的算法讲解 (2).docx

    * 贪心算法:POJ1328、POJ2109、POJ2586 * 递归和分治法 * 递推算法 * 构造法:POJ3295、POJ3259、POJ1062、POJ2253、POJ1125、POJ2240 * 最小生成树算法:prim、kruskal、POJ1789、POJ2485、POJ1258、POJ3026 * ...

    算法分类以及POJ题目分类

    此外,还有一些其他类型的题目,如图论、搜索、贪心算法等。在POJ中,可以通过题目分类找到更多相应类型的题目进行训练,以提高编程和算法能力。例如,1014、1147、1618等题目被归类为短代码,而1009、1010、1015、...

    ACM 详解算法目录

    例如,POJ1753和POJ2965是枚举算法的经典例题,而POJ1328、POJ2109和POJ2586则是贪心算法的代表题。 图算法部分涵盖了图的深度优先遍历和广度优先遍历、最短路径算法、最小生成树算法、拓扑排序和二分图的最大匹配...

    poj上算法题目分类

    Dijkstra 算法是一种用于求解单源最短路径问题的贪心算法,适用于无负权边的加权图。 **示例题目编号:** - 1022, 1111, 1118, 1129, 1190, 1562, 1564, 1573, 1655, 2184, 2225, 2243, 2312, 2362, 2378, 2386 **...

    算法分析解题报告poj1065

    这道题目是关于利用贪心算法解决一个木棍处理问题的。贪心算法是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是全局最好或最优的算法。在本题中,我们的目标是最小化处理...

    poj题目分类

    * 贪心算法:通过选择当前最优的解决方案来解决问题,例如 poj1328、poj2109、poj2586。 * 递归和分治法:通过将问题拆分成小问题来解决,例如 poj3295。 * 递推法:通过逐步解决问题来获得最终解,例如 poj1068...

    ACM常用算法及其相应的练习题.docx

    * 贪心:poj1328, poj2109, poj2586 * 递归和分治法 * 递推 * 构造法:poj3295 * 模拟法:poj1068, poj2632, poj1573, poj2993, poj2996 二、图算法 * 图的深度优先遍历和广度优先遍历 * 最短路径算法:dijkstra, ...

    acm poj300题分层训练

    如poj1753、poj2965用于枚举训练,poj1328、poj2109、poj2586是贪心策略的实例,poj2506和poj3295涉及分治法,poj1068、poj2632等则用于模拟训练。 2. **图算法**:包括图的深度优先遍历、广度优先遍历、最短路径...

    poj训练计划.doc

    - 贪心算法:在每一步选择中都采取在当前状态下最好或最优的选择,如`poj1328, poj2109, poj2586`。 - 分治法:将一个复杂的问题分成两个或更多的相同或相似的子问题,直到最后子问题可以简单的直接求解,如`poj...

    poj各种分类

    贪心算法是一种局部最优解策略,每次选择当前状态下看似最优的选择,以期望最终达到全局最优解。例如,poj1328和poj2109就是典型的贪心问题。贪心算法的关键在于正确性证明,确保每一步的局部最优能够导向全局最优。...

    acm训练计划(poj的题)

    - (poj1328, poj2109, poj2586):介绍各种搜索算法,如深度优先搜索(DFS)、广度优先搜索(BFS)等。 3. **排序与查找**: - 提供对排序和查找算法的理解与应用指导,包括快速排序、归并排序、二分查找等经典...

    算法实验(贪心策略 17-20题)1

    在“算法实验(贪心策略 17-20题)1”中,我们关注的是“poj 1042 钓鱼”问题,这是一道典型的贪心算法应用实例。该问题的背景是John计划去钓鱼,他有h小时的时间(1 ),并且有n个湖泊(2 )可以通过单向道路相连。...

Global site tag (gtag.js) - Google Analytics