lmdyyd @ 2024-10-09 22:33:24
#include<bits/stdc++.h>
using namespace std;
int main(){
int l,m,n=0;
cin >> l >> m;
int a[l];
for(int i=0;i<=l;i++){
a[i]=1;
}for(int i=1;i<=m;i++)
{
int u,v;
cin >> u >> v;
for(int j=u;j<=v;j++)
{
if(a[j]==1)
{
a[j]=0;
}
}
}for(int i=0;i<=l;i++)
{
if(a[i]==1)
{
n++;
}
}cout << n;
return 0;
}
by Lisuyang @ 2024-10-09 22:35:41
请注意下标,数组开成l+1 @lmdyyd
by M_C_Yyyds @ 2024-10-12 19:34:05
@lmdyyd
#include<iostream>
#include<cstdio>
using namespace std;
#include<cstring>
int L,M;
int cnt=0;
int vis[10000+10];
int main() {
memset(vis,0,sizeof(vis));
cin>>L>>M;
for(int i=0;i<=L;i++)
vis[i]=0;
for(int i=1;i<=M;i++)
{
int head,tail;
cin>>head>>tail;
for(int j=head;j<=tail;j++)
if(vis[j]==0)
vis[j]=1;
}
for(int i=0;i<=L;i++)
{
if(vis[i]==0)
cnt++;
}
cout<<cnt<<endl;
return 0;
}
你可以设定一个数组,初始化为0,有需要种的你就调为1,懂?
by lmdyyd @ 2024-10-12 21:32:18
谢谢达唠
by goto_FLY @ 2024-10-14 10:57:28
数组能开的长度必须是常量吧