1760 - 综合练习- bombing
一個(gè)城市遭到了?MM?次轟炸,每次都炸了一個(gè)每條邊都與邊界平行的矩形
在轟炸后,有?NN?個(gè)關(guān)鍵點(diǎn),指揮官想知道,它們有沒(méi)有受到過(guò)轟炸。如果有,被炸了幾次,最后一次是第幾輪。
?
輸入
第一行,兩個(gè)整數(shù):M,NM,N。?M,N \le 2000M,N≤2000
接下來(lái)?MM?行,每行四個(gè)整數(shù):x_1x1?、y_1y1?、x_2x2?、y_2y2?,表示被轟炸的矩形的左上角坐標(biāo)和右下角坐標(biāo)(比如1 3 7 10就表示被轟炸的地方是從?(1,3)(1,3)?到?(7,10)(7,10)?的矩形)。
再接下來(lái)?NN?行,每行兩個(gè)整數(shù),表示每個(gè)關(guān)鍵點(diǎn)的坐標(biāo)。
輸出
共?NN?行,每行第一個(gè)字符串為YES或NO,表示是否被轟炸,若為YES,在一個(gè)空格后為兩個(gè)整數(shù),表示被炸了幾次和最后一次是第幾輪。
樣例
輸入
復(fù)制
1 2 1 3 7 10 6 2 6 6輸出
復(fù)制
NO YES 1 1#include<bits/stdc++.h>
using namespace std;
int m,n,xa[10000],ya[10000],ans[10000],
xb[10000],yb[10000],da[10000];
int main(){
cin>>m>>n;
for(int i=1;i<=m;i++){
cin>>xa[i]>>ya[i]>>xb[i]>>yb[i];
}
for(int i=1;i<=n;i++){
int ax,ay;
cin>>ax>>ay;
for(int j=1;j<=m;j++)
{
if(ax>=xa[j]&&ax<=xb[j]&&ay>=ya[j]&&ay<=yb[j]){
ans[i]++; da[i]=j;
}
}
} for(int i=1;i<=n;i++){
if(ans[i]==0)
cout<<"NO"<<endl;
else{
cout<<"YES"<<" "<<ans[i]<<" "<<da[i]<<endl;
}
}
return 0;
}
總結(jié)
以上是生活随笔為你收集整理的1760 - 综合练习- bombing的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 纳米管定制 单壁碳纳米管/六角钡铁氧体复
- 下一篇: 国产化软件新浪潮:jdk redis m