竞赛
考级
#include<iostream> using namespace std; int a[10005]; int main(){ int l,m,s=0,t,w; cin>>l>>m; for(int i=0;i<=l;i++){ a[i]=1; } for(int i=1;i<=m;i++){ cin>>t>>w; for(int j=t;j<=w;j++){ a[j]=0; } } for(int i=0;i<=l;i++){ s+=a[i]; } cout<<s<<endl; return 0; }
互关
通过结构体、数组和循环嵌套组合,完成程序;
Feanaze
#include <iostream> #include <cstring> using namespace std; int a[10005]; int main(){ int L,M; cin>>L>>M; int x,y; memset(a,0,sizeof(int)); for(int i=1;i<=M;i++){ cin>>x>>y; for(int j=x;j<=y;j++){ a[j]=1; } } int sum=0; for(int i=0;i<=L;i++){ if(a[i]==0){ sum++; } }
༺ཌༀ٩( 'ω' )و ༀད༻
#include<ios> int l[10000],m,f,s,n;int main(){scanf("%d%d",&n,&m);for(int i=1;i<=m;i++){scanf("%d%d",&f,&s);int j=f;while(j<=s){if(!l[j])n--,l[j]=1;j++;}}printf("%d",n+1);}
史莱克七怪
简单数组题,代码如下: #include<iostream> using namespace std; int a[10005]; int main(){ int l,m,s=0,t,w; cin>>l>>m; for(int i=0;i<=l;i++){ a[i]=1; } for(int i=1;i<=m;i++){ cin>>t>>w; for(int j=t;j<=w;j++){ a[j]=0; } } for(int i=0;i<=l;i++){ s+=a[i]; } cout<<s<<endl; return 0; }
变鸽的一只呱
LOVEKlee1314
亚洲卷王 AK IOI
ζั͡ޓއއއ๓
复仇者_114514(互关
#include<bits/stdc++.h> using namespace std; int main(){ int l,m; cin>>l>>m; int tree[1000001]; for(int i=0;i<=l;i++){ tree[i]=1; } for(int i=1;i<=m;i++){ int x,y; cin>>x>>y; for(int j=x;j<=y;j++){ tree[j]=0; } } int sum=0; for(int i=0;i<=l;i++){ sum+=tree[i]; } cout<<sum; return 0; }
嫌疑を避ける ~~
#include <iostream> using namespace std; int main() { int l,m,c1,c2; cin>>l>>m; int a[l+1],sum=l+1; for(int i=0;i<l+1;i++)a[i]=1; for(int i=0;i<m;i++){ cin>>c1>>c2; for(int j=c1;j<c2+1;j++){ if(a[j]==1){ a[j]=0; sum--; } } } cout<<sum; }
NGGGGGGGGGGGGGGG
#include <bits/stdc++.h> using namespace std; const int N = 1e4+10; int a[N],l,m,u,v; int main(){ cin >> l >> m; while(m--){ cin >> u >> v; for(int i = u;i <= v;i++){ if(!a[i]){ a[i] = 1; l--; } } } cout << l+1; return 0; }
Rick
思路: 第一遍,将路上的所有树打上标记,表示这个点没有被访问过。 第二遍,读入区间的头和尾,从这个区间的头开始循环,到尾结束,标记为访问过。 第三遍,顺序访问路上的树,只要没访问过,计数加1,这样就求出了路上所有还存在的树的数目。
AC君
zsq-hugo
空降坐标:CP002783 来源:NOIP2005 普及组 请看代码
LiWei
来自互联网的疯子
#include<bits/stdc++.h> using namespace std; int a[10005];//模拟整个路段 int l,m,b,g;//l代表树的数量,m代表地铁的区域数,b代表地铁路段开始的坐标,g代表地铁路段结束的坐标 int main(){ cin>>l>>m; for(int i=1;i<=m;i++){ cin>>b>>g; for(int j=b;j<=g;j++){ if(a[j]==0){ l--; a[j] = 1; } } } cout<<l+1; return 0; } 有帮助,赞一个
菜
6.
#include<bits/stdc++.h> using namespace std; 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; }
苏言
#include <bits/stdc++.h> using namespace std; int l,m,a[10001],s; int main(){ cin>>l>>m; for(int i=0;i<=l;i++){ a[i]=1; } for(int i=1;i<=m;i++){ int x,y; cin>>x>>y; for(int j=x;j<=y;j++){ a[j]=0; } } for(int i=0;i<=l;i++){ s+=a[i]; } cout<<s; return 0; }
许肄霄
共52条