关闭

贪心算法之活动安排电视节目收看等

236人阅读 评论(0) 收藏 举报
分类:

使用贪心算法安排电视节目收看,求最大。

它和以前学过的活动安排一样的。

#include <iostream>
#include<algorithm>
using namespace std;

struct show{
    int startTime;
    int endTime;
    bool operator <(const show &a)const{
                return endTime<a.endTime;
    }
}t[1001];

int main()
{
    int n;
    while(cin>>n){
        if(n==0)
                break;
        for(int i=0;i<n;i++){
                cin>>t[i].startTime>>t[i].endTime;
        }
        sort(t,t+n);
        int ans=0;
        int currentTime=0;
        for(int i=0;i<n;i++){
                if(currentTime<=t[i].startTime){
                    currentTime=t[i].endTime;
                    ans++;
                 }
        }

        cout<<ans<<endl;
    }
    return 0;
}
/*
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
*/

0
0
查看评论

【算法导论】贪心算法之活动安排问题

对于许多最优化问题来说,采用动态规划来求解最优解有点大材小用了,只需要采用更简单有效的贪心算法就行了。贪心算法就是所做的每一步选择都是当前最佳的,通过局部最佳来寻求全局最佳解。就像砝码称重一样,总是优先选择大的砝码。 贪心算法对大多数优化问题来说能产生最优解,但也不一定总是这样的。能用贪心算法解的典...
  • tengweitw
  • tengweitw
  • 2013-11-27 22:18
  • 2268

贪心法求解活动安排(java实现)

贪心法描述: 贪心算法总是作出在当前看来最好的选择。也就是说贪心算法并不从整体最优考虑,它所作出的选择只是在某种意义上的局部最优选择。 在一些情况下,即使贪心算法不能得到整体最优解,其最终结果却是最优解的很好近似。 问题描述: 现有一组活动由你安排,但要求你在最短的时间内安排尽可能多的活...
  • JavaMan_chen
  • JavaMan_chen
  • 2012-11-29 10:07
  • 4033

活动安排问题(贪心算法)

//活动安排问题public class Activearr{ public static int greedselector(int [] s,int [] f,boolean [] a) { int n = s.length - 1; a [0] = true; int j = 1; i...
  • a9529lty
  • a9529lty
  • 2009-04-01 21:44
  • 13669

贪心算法基础之活动时间安排(一)安排 51nod 贪心教程

贪心算法之会场安排最多安排多少活动 有若干个活动,第i个开始时间和结束时间是[Si,fi),只有一个教室,活动之间不能交叠,求最多安排多少个活动? 输入 第1行:1个数N,时间段的数量(2 <= N <= 10000) 第2 - N + 1行:每行2个数,时间段的起点和终点(-...
  • winter2121
  • winter2121
  • 2017-05-09 21:57
  • 315

算法Java实现--贪心算法--活动安排问题

活动安排问题算法的java实现(贪心算法) 具体问题描述以及C/C++实现参见网址 http://blog.csdn.net/liufeng_king/article/details/8683136
  • qipanliming
  • qipanliming
  • 2014-04-28 17:27
  • 2717

贪心算法_活动安排问题

看了下贪心算法,直觉上以为适用于用贪心算法解决的问题好像并不多啊,不过现在先不说这个。先讨论下动态规划和贪心算法的不同之处,下面是一些本人结合书本得出的体会: 1、动态规划通常是自底向上求解问题的(当然也可以是"带备忘"的自顶向下求解问题),每一次选择都面向多个子问题选择,只不过...
  • u011638883
  • u011638883
  • 2013-11-21 10:37
  • 3425

活动安排问题的 动态规划和贪心算法

这篇文章主要用来记录我对《算法导论》 贪心算法一章中的“活动选择问题”的动态规划求解和贪心算法求解 的思路和理解。 主要涉及到以下几个方面的内容: ①什么是活动选择问题---粗略提下,详细请参考《算法导论》 ②活动选择问题的DP(Dynamic programming)求解--DP...
  • ustcyy91
  • ustcyy91
  • 2017-05-24 21:28
  • 1078

(基于Java)算法之贪心算法——活动安排问题

贪心算法(Greedy algorithm)
  • u010445247
  • u010445247
  • 2014-04-27 20:40
  • 1858

Python实现--贪心算法与活动安排问题

参考:http://blog.csdn.net/liufeng_king/article/details/8709005 如题:给出一组活动,告诉每个活动的开始时间和结束时间,要求出算出能参加的最多活动的数量或者活动的起止时间贪心算法思路:用两个数组s,f分别存储活动的起止时间,根据活动的结束时间...
  • qq_14908027
  • qq_14908027
  • 2017-12-17 19:22
  • 167

贪心算法-活动安排问题

贪心算法-活动安排问题 具体求解思路: 首先将活动按照结束时间从小到大排序, 然后将startTime[i]大于finishTime[i-1]的活动安排进去, 由于活动结束时间是事前排好序的(具体排序方法可以看我之前的博客),所以按照此方法,安排的活动相对于来说总是先结束的,这样来说就可以尽...
  • qq_19341327
  • qq_19341327
  • 2016-03-30 15:00
  • 745
    个人资料
    • 访问:7861次
    • 积分:580
    • 等级:
    • 排名:千里之外
    • 原创:50篇
    • 转载:3篇
    • 译文:0篇
    • 评论:1条
    文章分类
    最新评论