码迷,mamicode.com
首页 > 其他好文 > 详细

Codeup 墓地——1814: 剩下的树

时间:2019-03-26 13:51:24      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:线段   区间   整数   enter   stream   时间   namespace   外部   error:   

1814: 剩下的树

时间限制: 1 Sec  内存限制: 32 MB
提交: 2403  解决: 928
[提交][状态][讨论版][命题人:外部导入]

题目描述

有一个长度为整数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

PS:我忍不住吐槽一下,这道题暴力法解决!不需要想问题想的太复杂了!想那么多干什么?这道题的时间复杂度最高是O(10^6),不会超过1s的!
昨天晚上我做的时候,想复杂了... 还去把左右区间排了个序...根本不需要...这道题就是一个简单的模拟题,题目要你干啥,你就干啥,只是把中文话,变成代码,让计算机懂!
那么问题来了?"区间之间可能有重叠 "
这句话怎么翻译?设置一个访问数组visit[]就行,初始化全为0,当访问过了就置为-1.一旦没访问过,就L--;
输出需要注意的是:L+1 因为是剩下的树的数量

//碰到的一个报错:
error: reference to ‘left‘ is ambiguous
自定义的left 变量与库中重名;
解决:修改一下变量名


代码如下:
 1 #include <iostream>
 2 #include<algorithm>
 3 #include<vector>
 4 #include<cstring>
 5 #define maxn 10001
 6 /* run this program using the console pauser or add your own getch, system("pause") or input loop */
 7 using namespace std;
 8 
 9 int L,M;//长度以及组数
10 typedef struct interval{
11     int l;//左端点, 
12     int r;//右端点 
13 }Interval;
14 int visit[maxn]; 
15 
16 Interval inter[maxn];
17 void solve(){
18      int i,j;
19     for(i=0;i<M;i++){
20         for(j=inter[i].l;j<=inter[i].r;j++){
21             if(visit[j]==0) {
22                 L--;
23                 visit[j]=-1;
24             }
25         }
26     }    
27     cout<<L+1<<endl;
28 
29 }
30 int main(int argc, char** argv) {
31     
32     int i;
33 
34     cin>>L>>M;
35     while(L&&M){
36          memset(visit,0,sizeof(visit));
37         for(i=0;i<M;i++){
38             cin>>inter[i].l>>inter[i].r;
39         }
40     
41         solve();
42         cin>>L>>M;
43     } 
44     return 0;
45 }

 


Codeup 墓地——1814: 剩下的树

标签:线段   区间   整数   enter   stream   时间   namespace   外部   error:   

原文地址:https://www.cnblogs.com/industrial-fd-2019/p/10599403.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!