CowNow9490 @ 2023-09-22 21:19:55
模拟。
#include <bits/stdc++.h>
using namespace std;
int main(){
int L,M,T=0;
int start[100], end[100];
bool tree[10007];
memset(tree, false, sizeof(tree));
cin>>L>>M;
for(int i=1; i<=M; i++)
{
cin>>start[i]>>end[i];
if(start[i]>end[i] || start[i]<0 || end[i]>L) goto exit;
fill(tree+start[i], tree+end[i], true);
}
for(int i=1; i<=L; i++)
{
if(tree[i]==false) T+=1;
}
cout << T;
exit:
return 0;
}
by Tracy_Loght @ 2023-09-22 21:51:28
xxs表示看不懂
by Tracy_Loght @ 2023-09-22 21:52:42
这么简单的题,你让我看到的像普及
by Tracy_Loght @ 2023-09-22 21:56:49
直接在读入后用模拟,看要不要砍,记录答案就行
by chenxizhe2 @ 2023-10-02 17:04:15
没必要那么搞 我这么写满分
#include<bits/stdc++.h>
using namespace std;
bool treel[100005];//0 没被砍 1 砍完了
int l,u,v,m,s;// 路长l,m 地铁数量 u 起点 v终点。
int main(){
cin>>l>>m;
for(int i=1;i<=m;i++){
cin>>u>>v;
for(int j=u;j<=v;j++){
treel[j]=1;
}
}
for(int i=0;i<=l;i++){
if(treel[i]==0) s++;
}
cout<<s;
}
by chenxizhe2 @ 2023-10-02 17:04:46
@chenxizhe2 只需要循环嵌套
by Steve_xh @ 2023-10-22 15:44:27
最后统计循环不是从1到L!是从1到M!!