(一)读懂题目
关键词:
马路的一端在数轴0的位置,另一端在l的位置
数轴上的每个整数点,即 0,1,2…l,都种有一棵树。
又是化身光头强的一题
话不多说,开干
(二)分析算法+时间复杂度和空间复杂度
算法:一维数组的应用(我在回答什么。。)
时间复杂度:O(...)
空间复杂度:O(1)
(三)代码实现
简单的一维数组的应用题目
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int a[10005],l,n,num;//定义数组,变量
int main(){
cin>>l>>n;//输入
for(int i=1;i<=n;i++)
{
int x,y;//直接两个临时变量代替
cin>>x>>y;//输入临时变量
for(int j=x;j<=y;j++)//在两个区间内做光头强
{
a[j]=1;//光头强完工了标记一下
}
}
for(int i=0;i<=l;i++)//开始枚举数组(一定要从0开始)
{
if(a[i]==0)//没被砍过
{
num++;//答案+1
}
}
cout<<num<<endl;//输出答案
return 0;
}
(四)总结反思
简单的一维数组的应用,当然细节需要注意一些(例如从0开始枚举)
1183

被折叠的 条评论
为什么被折叠?



