taohuanyu @ 2024-11-25 21:08:17
#include<bits/stdc++.h>
using namespace std;
int main()
{
int l,m,sum=0,u[200],v[200],a[200]={0};
cin>>l>>m;
for(int i=1;i<=m;i++)
cin>>u[i]>>v[i];
for(int i=1;i<=m;i++)
{
for(int j=u[i];j<=v[i];j++)
a[j]=1;
}
for(int i=1;i<=l+1;i++)
if(a[i]==0) sum++;
cout<<sum;
return 0;
}
by caijunhan2012 @ 2024-11-25 21:10:32
试试这样:
#include<bits/stdc++.h>
using namespace std;
int l,m,u,v;
bool a[10086];
int main(){
cin>>l>>m;
for(int i=0;i<m;i++){
cin>>u>>v;
for(int j=u;j<=v;j++){
a[j]=1;
}
}
int b=l;
for(int i=0;i<=b;i++){
if(a[i]){
l--;
}
}
cout<<l+1;
return 0;
}
看看行不行
by caijunhan2012 @ 2024-11-25 21:11:38
@taohuanyu
by taohuanyu @ 2024-11-25 21:14:14
OK
by 小陈同学cyh @ 2024-11-25 21:15:45
好像没什么问题啊
将
for (int i=1;i<=l+1;i++)
改为
for (int i=0;i<=l;i++)
即可通过 @taohuanyu
by taohuanyu @ 2024-11-25 21:23:53
谢