- [NOIP 2005 普及组] 校门外的树
如何分别用原始嵌套循环,差分数组,区间合并+标记的方法解决这道题?
- @ 2025-10-10 10:47:31
原始嵌套循环:
#include<iostream>
#include<vector>
using namespace std;
int main()
{int l=0,m=0,sum=0;
cin>>l>>m;
vector<int>a(m+1);
vector<int>b(m+1);
vector<int>t(l+1);
for(int i=1;i<=m;i++)
{
cin>>a[i]>>b[i];
}
for(int i=0;i<=l;i++)
{
t[i]=1;
for(int n=1;n<=m;n++)
{
if(i>=a[n]&&i<=b[n])
{
t[i]=0;
break;
}
}
}
for(int i=0;i<=l;i++)
{
sum+=t[i];
}
cout<<sum<<endl;
return 0;
}
0 comments
No comments so far...
Information
- ID
- 5105
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 1
- Tags
- # Submissions
- 561
- Accepted
- 299
- Uploaded By