[codeup] 1126 看电视

题目描述

暑假到了,小明终于可以开心的看电视了。但是小明喜欢的节目太多了,他希望尽量多的看到完整的节目。

现在他把他喜欢的电视节目的转播时间表给你,你能帮他合理安排吗?

输入

输入包含多组测试数据。每组输入的第一行是一个整数n(n<=100),表示小明喜欢的节目的总数。

接下来n行,每行输入两个整数si和ei(1<=i<=n),表示第i个节目的开始和结束时间,为了简化问题,每个时间都用一个正整数表示。

当n=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

样例输出

5

思路

贪心,找出最大不相交区间问题。把所有区间按左端点x从大到小排序,如果去除区间包含的情况,那么一定有y1>y2>...>yn成立,每次总是优先选择左端点最大的区间,或者总是优先选择右端点最小的区间。

代码

#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
const int maxn = 100;
struct Inteval
{
    int x;
    int y;
} inteval[maxn];

bool cmp(Inteval a, Inteval b)
{
    if (a.x != b.x)
        return a.x > b.x;
    else
        return a.y < b.y;
}

int main()
{
    int n;
    while (scanf("%d", &n) && n != 0) {
        for (int i = 0; i < n; i++)
            cin >> inteval[i].x >> inteval[i].y;
        sort(inteval, inteval + n, cmp);
        int ans = 1, lastx = inteval[0].x;
        for (int i = 1; i < n; i++) {
            if (inteval[i].y <= lastx) {
                lastx = inteval[i].x;
                ans++;
            }
        }
        cout << ans << endl;
    }

    return 0;
}

原文地址:https://www.cnblogs.com/trav/p/10386372.html

时间: 2024-10-09 16:30:25

[codeup] 1126 看电视的相关文章

读书、看电视应该身临其境去读、去看(不是为了娱乐,而是为了对人生有帮助)

我觉得自己犯的那么多严重错误,其实以前都是在书上见过的,可就是不当回事,把它当一个故事看过哈哈一笑而过,有的时候还把这些故事当作谈资来炫耀自己知道的事情多,现在想起来真是万分后悔.至少有2件事情完全没有吸取教训,让自己付出巨大代价: 1. 双侠2. 贺若弼 另外,我没有沉着冷静观察周边事物,从而失去机会导致一生的伤痛- 读书.看电视真的不是为了娱乐,而是为了对人生有帮助

制儿童看电视

电视是小朋友的最爱,可是许多的研究指出它可能与最近越来越多的儿童青少年犯罪有关,因为电视节目很多暴力与不宜儿童接触的资讯,会在不经意中影响儿童的身心健康. 许多的研究包括美国心理协会,美国青少年儿同心理学会,与美国国家心理健康中心的研究都充份支持限制儿童接触电视的内容与时间长短. 美国小儿科医学会日前警告,二岁以下的儿童最好完全不看电视,一方面他们也看不懂,其次,他们应该与父母或年龄较长的儿童互动才能刺激脑部的关连与神经发育,单向式的电视对于他们一点好处也没有,而且家中父母会以为他们看电视时和二

[转]从 Apple TV 看电视的进化

电视被许多人吐槽为 “几十年没变过的东西”,因此苹果也被寄予厚望能改变这件事物.可惜的是,这种期望在空中飘了这么久,苹果也没玩出多少花样,直到这次发布会 Apple TV 才有了一些值得期待的改进. 传统电视 在 PC 和智能手机成为主流设备前,电视大概是我们能拥有的唯一一款大规模流行的科技消费产品.电视的消费群体以 “家庭” 为单位,几乎没什么计算和联网的能力,更多的是一款输出的媒介. 尽管以今天的目光审视起来,传统电视的科技含量少得可怜,但这款设备曾经带给人们的贡献是不可抹杀的.在很多年轻人

用U3D寻找看电视的感觉!!

调整 Camera  的角度和你一致, 找到看电视的感觉了吧?! Y 224度 再调下X就行

英文情景对话:看电视时必备的十句口语

1. We're not watching this. 我们不看这个. 2. Could you stop flipping the channels? 你能不能不要一直转台啊? 3. I'd appreciate it if you could turn it down. 如果你能把音量关小一点的话,我会很感激. 4. I heard that a new sitcom is coming out next season. 我听说下一季会推出一个新的情境喜剧. 5. Tiger Woods w

华为荣耀盒子怎么用 华为荣耀盒子连接电视和联网及看电视教程

华为荣耀盒子是华为在一周年发布的产品,现在只要在华为商城中就可以购买,价格为298元,很多用户由于是第一次购买这个盒子因此不知道该怎么用,其实盒子的连接方法很简单的,下面是华为盒子连接电视教程,希望对大家有所帮助. 华为荣耀盒子连接电视教程 一,连接高清电视的方法: 连接高清电视首先要确定我们的但是有HDMI的接口.这个接口长得什么样子的咧?如图 当然了,每个电视的接口位置都不同.大家可以看下自己电视的HDMI输入接口的位置哦. 接下来在盒子中找到我们的自带的一条高清HDMI线材. 将HDMI线

程序员应该有属于自己的看电视方式

看电视也能装B?作为程序员的你,是不是觉得看电视有点离我们太远,是不是觉得拿着遥控器看电视有点low.实际上,程序员有我们自己看电视的方式吗,让小编带你装一把'A' + 1吧. 下载ffmpeg:下载地址: https://ffmpeg.zeranoe.com/builds/ 看您的操作系统,32位选择左边,64位选择右边.开始下载,稍作等待. 安装: 如图,下载之后,得到压缩包,将安装包移动到你想安装的目录,然后解压.将解压后的路径做记录,不记录也可. 设置环境变量:将第3步中安装的目录添加到

看电视(贪心算法)

问题 A: 看电视 时间限制: 1 Sec  内存限制: 32 MB提交: 927  解决: 432[提交][状态][讨论版][命题人:外部导入] 题目描述 暑假到了,小明终于可以开心的看电视了.但是小明喜欢的节目太多了,他希望尽量多的看到完整的节目.现在他把他喜欢的电视节目的转播时间表给你,你能帮他合理安排吗? 输入 输入包含多组测试数据.每组输入的第一行是一个整数n(n<=100),表示小明喜欢的节目的总数.接下来n行,每行输入两个整数si和ei(1<=i<=n),表示第i个节目的开

hdu 2037 今年暑假不AC (看电视贪心)

表示你喜欢看的节目的总数,然后是n行数据,每行包括两个数据Ti_s,Ti_e (1<=i<=n),分别表示第i个节目的开始和结束时间,为了简化问题,每个时间都用一个正整数表示.n=0表示输入结束,不做处理.求最多看的电视数目 将电视按结束时间排序,遍历电视开始时间是否小于 记录的上个电视的结束时间 1 for(int i = 1 ; i < n ; i ++){ 2 if(tv[i].s >= endtime){ 3 cnt++; 4 endtime = tv[i].e; 5 }