给定n辆车的横坐标和长度,可以打两枪,打中车的任何部分都算打中。问最多能打中几辆车。
例:
4
2 2
3 1
5 2
7 3
输出:4
题解:
#include
#include
int a[205],b[205],c[205];
bool q(int w,int e){
return a[e]<=a[w]&&b[e]>=a[w];
}
int n;
int s(int w,int e){
int re=0;
for(int i=1;i<=n;i++)
if(q(w,i)||q(e,i))re++;
return re;
}
void work(){
scanf("%d",&n);
for(int i=1;i<=n;i++){
int l;
scanf("%d %d",&a[i],&l);
b[i]=a[i]+l;
}
int ans=0;
for(int i=1;i<=n;i++)
for(int j=i+1;j<=n;j++){
int k=s(i,j);
if(k>ans)ans=k;
}
printf("%d\n",ans);
}
int main(){
work();
return 0;
}