drifter @ 2023-10-11 20:55:40
全部WA了,有没有大佬看看为什么>_<。 所给测试用例和下载的第一个WA答案都是对的。
#include <iostream>
using namespace std;
int main()
{
int l, m;
int a[m][2];
int count1 = 0;
int flag = 1; //如果flag为1则表示该点为树
cin >> l >> m;
for(int i = 0; i < m; i++)
{
for(int j = 0; j < 2; j++)
{
cin >> a[i][j];
}
}
for(int h = 0; h <= l; h++)
{
for(int i = 0; i < m; i++)
{
if(h >= a[i][0] && h <= a[i][1])
{
flag = 0;
} else continue;
}
if(flag != 0)
count1++;
flag = 1;
}
cout << count1;
return 0;
}
by chenlh0711 @ 2023-10-11 21:15:54
这个题没必要定义一个二维数组吧,定义一个一维数组打标记就行吧
by yzl0225 @ 2023-10-13 16:30:52
int a[m][2];
??? 不应该是[105][2]吗?
by 2022tysc0539 @ 2023-10-14 21:22:33
#include <iostream>
using namespace std;
int main()
{
int changdu,n;
int a[10005]={0};//最大长度+预备的标记
cin >> changdu >> n;
for(int i = 1; i <= n; i++)
{
int left,right;
cin>>left>>right;
for(int j=left;j<=right;j++)a[j]=1;//标记区域内的数
}
int cnt=0;
for(int i = 0; i <= changdu; i++)
{
if(a[i]==0)cnt++;//统计
}
cout << cnt;
return 0;
}
调好了,稍微改了亿点
by Steve_xh @ 2023-10-22 15:42:47
怎么老是会有人喜欢拿变量当数组长度啊?码风好怪