Sternstunde__ @ 2022-11-01 16:27:50
按照示例输入的数据跑出来是对的,自己试的数据跑出来也是对的,但是全是WA不知道为什么。 代码如下:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int l,i,j,m;//i和j是用来循环计数的
cin>>l>>m;
int a[l];
int n=0;
for(i=0;i<=l;i++)
a[i]=1;//每棵树开始赋值1表示它存在
int c,b;
for(i=0;i<m;i++)
{
cin>>c>>b;//c,b是区域的坐标
if(c>b) break;//保证坐标的正确性
for(j=0;j<=l;j++)
{
if(j>=c&&j<=b)
a[j]=0;//在区域内的树赋值零表示把它去掉
}
}
for(j=0;j<=l;j++)
n=n+a[j];//把所有存在的树累加起来得到剩余数目总量
cout<<n<<endl;
return 0;
}
by 王洪钰yyds @ 2022-11-01 16:35:34
下标从0开始,a数组应该多开一点。不然会越界。
by lzx0 @ 2022-11-06 11:57:35
数组小了·····