JackQin


私信TA

用户名:2219529518

访问量:12661

签 名:

真正的大师永远怀着一颗学徒的心。

等  级
排  名 651
经  验 3896
参赛次数 5
文章发表 25
年  龄 18
在职情况 学生
学  校 上海交通大学
专  业 计算机科学

  自我简介:

纵然疾风起,人生不言弃。

解题思路:

                利用一维数组与数轴相似的特点进行操作,化实际为抽象
注意事项:
                1、注意审题,是从0到L,所以最多有10001颗树。

                2、给你的L是路的长度,但根据实际情况一共会有n+1颗树。

                3、这种数组操作不用考虑重合情况,因为里面不是1(表示有树)就是0(表示没有树)。

                4、嗯。。。一开始我忘了按输入分配数组大小,所以这个程序还是可以优化的。


                我因为没有注意到1,2点耗了很多时间,希望你们别步我后尘

参考代码:

#include <stdio.h>
#include <stdlib.h>
#define MAX 10001

int main()
{
    int n,x,z,y,all[MAX],p=0,b,temp;/*x为组,n为路长*/
    scanf("%d %d",&n,&x);
    for (b=0;b<MAX;b++)
    all[b]=0;
    for (b=0;b<n+1;b++)
        all[b]=1;
    while (x--)
    {
        scanf("%d %d",&z,&y);
        for (;z<=y;z++)
            all[z]=0;
    }
    for (b=0;b<MAX;b++)
    {
        if (all[b]==1)
            p++;
    }
        printf("%d\n",p);
    return 0;
}


 

0.0分

2 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答

代码解释器

  评论区

我就说哪里不对
2021-05-07 20:00:45
  • «
  • 1
  • »