今年暑假不AC
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 21601 Accepted Submission(s): 11334
Problem Description
“今年暑假不AC?”
“是的。”
“那你干什么呢?”
“看世界杯呀,笨蛋!”
“@#$%^&*%...”
确实如此,世界杯来了,球迷的节日也来了,估计很多ACMer也会抛开电脑,奔向电视了。
作为球迷,一定想看尽量多的完整的比赛,当然,作为新时代的好青年,你一定还会看一些其它的节目,比如新闻联播(永远不要忘记关心国家大事)、非常6+7、超级女生,以及王小丫的《开心辞典》等等,假设你已经知道了所有你喜欢看的电视节目的转播时间表,你会合理安排吗?(目标是能看尽量多的完整节目)
“是的。”
“那你干什么呢?”
“看世界杯呀,笨蛋!”
“@#$%^&*%...”
确实如此,世界杯来了,球迷的节日也来了,估计很多ACMer也会抛开电脑,奔向电视了。
作为球迷,一定想看尽量多的完整的比赛,当然,作为新时代的好青年,你一定还会看一些其它的节目,比如新闻联播(永远不要忘记关心国家大事)、非常6+7、超级女生,以及王小丫的《开心辞典》等等,假设你已经知道了所有你喜欢看的电视节目的转播时间表,你会合理安排吗?(目标是能看尽量多的完整节目)
Input
输入数据包含多个测试实例,每个测试实例的第一行只有一个整数n(n<=100),表示你喜欢看的节目的总数,然后是n行数据,每行包括两个数据Ti_s,Ti_e (1<=i<=n),分别表示第i个节目的开始和结束时间,为了简化问题,每个时间都用一个正整数表示。n=0表示输入结束,不做处理。
Output
对于每个测试实例,输出能完整看到的电视节目的个数,每个测试实例的输出占一行。
Sample Input
12
1 3
3 4
0 7
3 8
15 19
15 20
10 15
8 18
6 12
5 10
4 14
2 9
0
Sample Output
5
思路:
贪心。求最早时间结束的节目。
AC:
#include<cstdio> #include<algorithm> using namespace std; typedef struct { int sta; int end; }node; node no[105]; int cmp(node a,node b) { return a.end<b.end; } int main() { int n; while(scanf("%d",&n)!=EOF&&n) { int time=0,ans=0; for(int i=1;i<=n;i++) scanf("%d%d",&no[i].sta,&no[i].end); sort(no+1,no+n+1,cmp); //以结束时间为准由低到高排序 for(int i=1;i<=n;i++) if(time<=no[i].sta) { ans++; time=no[i].end; } printf("%d\n",ans); } return 0; }
相关推荐
简单,完备,为你提供简单的贪心算法,更易掌握呀,呵呵,下载下载
标题中的“今年暑假不AC题目详细解答完全代码”暗示了这是一个关于编程竞赛或算法训练的问题,其中“AC”通常代表“Accepted”,意味着提交的代码通过了所有测试用例。描述中提到的策略是解决一个问题的贪心算法,该...
贪心算法 贪心算法 贪心算法 贪心算法 贪心算法 贪心算法
贪心算法并不保证在所有情况下都能找到全局最优解,但对某些特定问题,如霍夫曼编码、Prim最小生成树、Dijkstra最短路径等问题,贪心策略可以得到正确答案。 贪心算法的基本思想可以概括为:每一步都做出在当前看来...
### 贪心算法概述 贪心算法是一种广泛应用于计算机科学和数学领域的求解方法,其核心思想在于:在每一个决策点,都选择当前看起来最优的选择。这种算法并不一定能够保证全局最优解,但在很多情况下可以得到满意的...
在解决优化问题时,贪心算法并不总是能得出全局最优解,但通常能得出局部最优解。在面对旅行商问题(Traveling Salesman Problem, TSP)时,贪心策略往往不能直接求得全局最优解,但可以作为启发式算法的一种基础。 ...
贪心法虽然不能保证在所有TSP问题上都能找到最优解,但它在某些情况下能提供快速且接近最优的解决方案。通过对源代码的分析和实验数据的测试,我们可以深入理解贪心法的工作原理,并了解其在解决复杂优化问题时的...
这是因为TSP具有“子结构最优性”,即最优解包含其任意子问题的最优解,而贪心算法不满足这一特性。 **代码分析** 虽然没有提供具体的代码,但可以推测`tsp.c`可能包含以下部分: 1. 数据结构:定义城市和城市间...
贪心法的核心在于其“短视”的特性,即在每个决策点上,算法只考虑当前的最佳选择,而不考虑未来的后果。 #### 贪心法的设计思想 贪心法的设计思想基于两个关键概念:**局部最优选择**和**无后效性**。局部最优...
对于部分背包问题,贪心策略可能在某些情况下不产生最佳解,特别是当物品的单位价值不是线性关系时。然而,由于其简单性和效率,贪心算法在很多实际问题中仍然是一个实用的解决方案。 这个“实验二a”程序可能是...
贪心算法并不从整体最优考虑,它所作出的选择只是在某种意义上的局部最优选择。虽然贪心算法不能对所有问题都得到整体最优解,但对许多问题它能产生整体最优解。 在本节中,我们将讨论贪心算法的基本要素和理论基础...
贪心算法、分治算法和动态规划的区别 贪心算法、分治算法和动态规划是三种常用的算法设计策略,每种算法都有其特点和应用场景。下面我们将对这三种算法进行详细的比较和分析。 分治算法 分治算法是一种将原问题...
贪心算法的特点是一步一步地进行,常以当前情况为基础根据某个优化测度作最优选择,而不考虑各种可能的整体情况,省去了为找最优解要穷尽所有可能而必须耗费的大量时间。贪心算法采用自顶向下,以迭代的方法做出相继...
### 贪心算法找零钱 ...然而,需要注意的是,贪心算法并不总是能够得到全局最优解,特别是在货币面额设置不合理的场景下可能会出现次优解。因此,在实际应用中还需要根据具体情况选择合适的算法。
### 贪心算法在背包问题中的应用及C语言实现 #### 一、贪心算法简介 贪心算法是一种在每个步骤中都选择局部最优解的策略,希望通过一系列的局部最优选择来达到全局最优解的目的。它适用于某些特定的问题类型,在...
在实际应用中,贪心算法的优势在于其简洁性和高效性,但需要注意的是,贪心算法并不总是能得到全局最优解,只在特定问题上适用。例如,背包问题和最优装载问题,贪心算法可以得到最优解;而在活动安排问题中,贪心...
贪心算法的优点是思路简单,易于实现,但并不总是能得到全局最优解,因为它的每一步选择都是局部最优的,而全局最优可能需要考虑更多的组合可能性。在背包问题中,贪心算法对于某些特定类型的问题(如完全背包、非...
但是,当硬币面额不符合一定规律时(例如只有一角一分、五分和一分),贪心算法可能无法得到最优解。 - **例子**:如果有4种硬币,面值分别为2角5分、一角、五分和一分,需要找零6角三分,使用贪心算法,先拿两个2...