题解 | #剩下的树#

剩下的树

https://www.nowcoder.com/practice/f5787c69f5cf41499ba4706bc93700a2

#include <iostream>
//有一条长度为整数L(1<=L<=10000)的马路,可以将他想象为数轴上长度为L的一条线段,七点是坐标原点,
//在每个整数坐标点处有一颗树,即0~L上有L+1棵树
//现在要移走一些树,移走的树的区间用一对数字表示,如“100 200”表示移走100~200之间的树(包括端点)
//可能有M(1<=M<=100)个区间,区间之间可能有重叠,现在要求移走所有区间树后剩余的树的数量
//输入:两个整数L和组数M
//对于每组数据,输出一个数,表示移走所有区间之后剩下的树的棵树
int main() {
    int sum=0;
    int M,L;
    scanf("%d %d",&L,&M);
    int Tree[L+1];//下标是0~L
    int left,right;
    for(int l=0;l<L+1;l++){
        Tree[l]={1};//1代表此处有一棵树
    }
    for(int i=0;i<M;i++){
        scanf("%d %d",&left,&right);
        for(int j=left;j<=right;j++){
            if(Tree[j]==1){
                Tree[j]=0;
            }
        }
        }
    for(int k=0;k<L+1;k++)
    {
        if(Tree[k]==1){
            sum+=1;
        }
    }
    printf("%d",sum);
    return 0;
}

全部评论

相关推荐

06-05 19:46
已编辑
武汉大学 后端
点赞 评论 收藏
分享
废物一个0offer:认真的吗二本本科找人工智能岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务