蒟蒻70分求助!!!

P1047 [NOIP2005 普及组] 校门外的树

DeepAndDark @ 2022-09-29 22:32:05

不知道为什么只能拿到70分,求dalao讲解

#include<iostream>
using namespace std;
int t[10010],l,m,u,v,sum=0;
int main()
{
    cin>>l>>m;
    for(int i=0;i<l;i++)
    {
        t[i]=1;//种树
    }
    for(int i=0;i<m;i++)
    {
        cin>>u>>v;
        for(int i=u;i<=v;i++)
        {
            t[i]=0;//移树
        }
    }
    for(int i=0;i<l;i++)
    {
        if(t[i]==1)
        {
            sum++;//记数
        }
    }
    cout<<sum+1;
   return 0;
}

by BYR_KKK @ 2022-10-02 12:06:48

第一个问题:审题,题目所表述的是 “我们可以把马路看成一个数轴,马路的一端在数轴 00 的位置,另一端在 ll 的位置;数轴上的每个整数点,即 0,1,2,…,l,都种有一棵树。

应该是种了(L+1)棵树,”种树”时为

for(int i=0;i<=l;i++) 计数时也是同理;输出不用加1

第二个问题:把u,v改成临时变量,插入第二个循环


|