player123 @ 2023-08-27 21:16:52
P1074
#include<bits/stdc++.h>
using namespace std;
int n,l,t[10005];
int num=0;
struct tree{
int start,finall;
}a[100005];
int main(){
cin>>l>>n;
for(int i=0;i<=10005;++i){
t[i]=1;
}
for(int i=1;i<=n;++i){
cin>>a[i].start>>a[i].finall;
for(int j=a[i].start;j<=a[i].finall;++j){
t[j]=0;
}
}
for(int i=0;i<=l;++i){
//cout<<t[i]<<" ";
num+=t[i];
}
cout<<num;
return 0;
}
用上面这段代码会错第一组数据\ 但把int num=0;放main里就能过
这啥情况?????
by OldDriverTree @ 2023-08-27 21:20:37
@player123 初始化时 t 数组越界,越界到了 num,导致 num 变成 1
by OldDriverTree @ 2023-08-27 21:21:15
@player123 还有不是 P1047 吗()
by player123 @ 2023-08-27 21:25:05
@OldDriverTree\ 明白了 谢谢\ 题号不小心打错了。。。。。