[提交][状态][讨论版][命题人:外部导入]

题目描述

有一个长度为整数L(1<=L<=10000)的马路,可以想象成数轴上长度为L的一个线段,起点是坐标原点,在每个整数坐标点有一棵树,即在0,1,2,...,L共L+1个位置上有L+1棵树。     现在要移走一些树,移走的树的区间用一对数字表示,如 100 200表示移走从100到200之间(包括端点)所有的树。     可能有M(1<=M<=100)个区间,区间之间可能有重叠。现在要求移走所有区间的树之后剩下的树的个数。

输入

两个整数L(1<=L<=10000)和M(1<=M<=100)。     接下来有M组整数,每组有一对数字。

输出

可能有多组输入数据,对于每组输入数据,输出一个数,表示移走所有区间的树之后剩下的树的个数。

样例输入

4 2
1 2
0 2
11 2
1 5
4 7
0 0

样例输出

2
5
思想:首先对输入的区间进行一stat的升序排序,然后进行遍历,并实时记录最大的end,判断第i+1的start-maxend是否大于2若是大于则将sum+=a[i+1]-maxend-1.

AC代码:

#include <iostream>
#include <cstdio>
#include <algorithm>
#define Max 10005
using namespace std;struct range
{int start;int end;
}tree[Max];bool compare(range a,range b)
{return a.start<b.start;
}int main(void)
{freopen("in.txt","r",stdin);int L,n;while(scanf("%d%d",&L,&n)!=EOF&&(L||n)){int sum=0;for(int i=1;i<=n;i++)scanf("%d%d",&tree[i].start,&tree[i].end);sort(tree+1,tree+1+n,compare);int maxend=0;sum+=tree[1].start-0;for(int i=1;i<=n-1;i++){if(tree[i].end>maxend)maxend=tree[i].end;if(tree[i+1].start-maxend>=2)sum+=tree[i+1].start-maxend-1;}if(tree[n].end>maxend)maxend=tree[n].end;sum+=L-maxend;printf("%d\n",sum);}fclose(stdin);return 0;
}

转载于:https://www.cnblogs.com/phaLQ/p/10056555.html

Codeup_575A_剩下的树相关推荐

  1. Codeup 墓地——1814: 剩下的树

    1814: 剩下的树 时间限制: 1 Sec  内存限制: 32 MB 提交: 2403  解决: 928 [提交][状态][讨论版][命题人:外部导入] 题目描述 有一个长度为整数L(1<=L ...

  2. 九度1088——剩下的树

    九度1088 题目描述: 有一个长度为整数L(1<=L<=10000)的马路,可以想象成数轴上长度为L的一个线段,起点是坐标原点,在每个整数坐标点有一棵树,即在0,1,2,-,L共L+1个 ...

  3. [Codeup]1814 问题 A: 剩下的树

    题目描述 有一个长度为整数L(1<=L<=10000)的马路,可以想象成数轴上长度为L的一个线段,起点是坐标原点,在每个整数坐标点有一棵树,即在0,1,2,-,L共L+1个位置上有L+1棵 ...

  4. Codeup 1814.剩下的树

    -------------------- /*  * Copyright (c) 2014, 烟台大学计算机学院  * All rights reserved.  * 文件名称:test.cpp  * ...

  5. 1814 Problem A 剩下的树

    问题 A: 剩下的树 时间限制: 1 Sec  内存限制: 32 MB 题目描述 有一个长度为整数L(1<=L<=10000)的马路,可以想象成数轴上长度为L的一个线段,起点是坐标原点,在 ...

  6. 九度OJ-1088剩下的树

    题目地址 http://ac.jobdu.com/problem.php?pid=1088 //线段树 区间更新 #include <cstdio> #include <algori ...

  7. 霍夫曼树(最优二叉树)的实现

    文章目录 一.相关概念 1.节点的路径及路径长度 2.节点的带权路径长度 3.树的带权路径长度 4.霍夫曼树 二.构建步骤与图解 1.构建步骤 2.图解 三.代码实现 1.创建节点类: 2.创建霍夫曼 ...

  8. 洛谷 - P4323 [JSOI2016]独特的树叶(树上哈希+换根dp)

    题目链接:点击查看 题目大意:给出一棵 n 个节点的树 A ,再给出一棵 n + 1 个节点的树 B,题目保证了树 B 是树 A 添加了一个叶子结点后的一棵树,只不过编号的顺序不同,现在问这个叶子节点 ...

  9. 信息学奥赛一本通 1107:校门外的树 | 1931:【05NOIP普及组】校门外的树 | OpenJudge NOI 1.6 06 | 洛谷 P1047 [NOIP2005 普及组] 校门外的树

    [题目链接] ybt 1107:校门外的树 ybt 1931:[05NOIP普及组]校门外的树 OpenJudge NOI 1.6 06:校门外的树 洛谷 P1047 [NOIP2005 普及组] 校 ...

  10. PAT100000575-剩下的树

    题目描述 有一个长度为整数L(1<=L<=10000)的马路,可以想象成数轴上长度为L的一个线段,起点是坐标原点,在每个整数坐标点有一棵树,即在0,1,2,-,L共L+1个位置上有L+1棵 ...

最新文章

  1. Redis的数据类型以及每种数据类型的使用场景
  2. mysql sqlserver 函数_等价于MySQL中的SQLServer函数SCOPE_IDENTITY()??mysql-问答-阿里云开发者社区-阿里云...
  3. php后台无法接受文件,ios afnetworking2.x上传图片 服务端php无法接受文件问题
  4. mysql max connects_mysql max_connections 总是 4190
  5. keil查看程序运行时间_Keil系列教程05_工程目标选项配置(一)
  6. python网络爬虫(三)数据抓取
  7. .Net Core WebApi(三)在Linux服务器上部署
  8. 【英语学习】【Level 08】U02 Movie Time L1 Let's talk about movies
  9. python 数学期望_数学期望(离散型和连续型)
  10. vue自带的实例属性和方法($打头)
  11. Intellij IDEA中程序播放音乐 没声音
  12. JPA并发save失效
  13. ATX电源工作原理的学习
  14. google广告分类
  15. 福晟集团积极探索让“住有所居”成为新时代转型之路
  16. 使用STM32CubeMX创建USB MSC工程
  17. 06 Redis中BigKey、HotKey的发现与处理
  18. 0611 auto sorting and resend script
  19. 洪荒修真服务器名字可以修改吗,洪荒修真变态版
  20. C++中的typeid关键字

热门文章

  1. 2012.4.16总结(三)
  2. php redisson,排查redisson中订阅connection无故消失的问题
  3. python 爬虫_python爬虫技术汇总
  4. Python命令行版本的员工管理系统
  5. sbt命令行常用命令
  6. 安装配置管理 之 安装和配置 JPackage Java
  7. [CodeForces - 276A] Lunch Rush
  8. 记一次自己在Linux上倒腾Nginx的经历
  9. AE 将地图导出为图片的两种方法
  10. 苹果谈iPhone遭CIA攻击:强烈要求用户升级系统