shao3377168499 @ 2022-10-28 14:45:39
#include<iostream>
using namespace std;
int main() {
int l[10000],m,n=0,L,j,k,y=0;
cin >> L>>m;
for (int i = 0; i <= L; i++)
{
l[i]=n;
n++;
}
for (int i = 0; i < m; i++)
{
cin >> j >> k;
for(int d=0;d<=L;d++)
if (j <= l[d] && l[d] <= k)
{
l[d] = 0;
}
}
for (int x = 0; x <= L; x++)
{
if (l[x] != 0)
y++;
}
cout << y+1;
return 0;
}
by Ykmirror @ 2022-10-28 15:03:19
看看我的@shao3377168499
#include<bits/stdc++.h>
using namespace std;
int main(){
int l,m;
int cnt=0;
cin>>l>>m;
int a[l+10];
for(int i=0;i<=l;i++){
a[i]=1;
}
for(int i=1;i<=m;i++){
int head,tail;
cin>>head>>tail;
for(int j=head;j<=tail;j++){
a[j]=0;
}
}
for(int i=0;i<=l;i++){
if(a[i]==1){
cnt++;
}
}
cout<<cnt<<endl;
return 0;
}
不是大佬(悲) 求互关qwq
by VitrelosTia @ 2022-10-28 15:08:31
@mky12345 贴代码对于他没有任何帮助
by WZWZWZWY @ 2022-10-28 15:13:45
问题出在这里:
for (int i = 0; i <= L; i++)
{
l[i]=n;
n++;
}
想想i=0时l[i]的值.是的,n一开始为0,所以 l[i]的值就变成了0.相当于你一开始就把这棵树移走了。想想应该怎么做
@shao3377168499