1. 程式人生 > >HDU2555 人人都能參加第30屆校田徑運動會了

HDU2555 人人都能參加第30屆校田徑運動會了

name using esp eof cst span clu space spa

思路:判斷沙包是否在矩形中。

#include<cmath>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm> 
using namespace std;
const int maxn = 30001;
int b[maxn];
struct node
{
    int x , y;
}k[maxn];
 struct node2
{
    int x1 , x2 , y1 , y2;
}k2[maxn];
bool cmp(int a ,int b) { return a > b; } int main(void) { int n , m; while(cin >> n >> m) { for(int i = 0 ; i < n ; i ++) { cin >> k[i].x >> k[i].y ; } for(int i = 0 ; i < m ; i ++) { cin
>> k2[i].x1 >> k2[i].y1 >> k2[i].x2 >> k2[i].y2; } memset(b , 0 , sizeof(b)); for(int i = 0 ; i < n ; i ++) { for(int j = 0 ; j < m ; j ++) { if( k[i].x >= k2[j].x1 && k[i].x <= k2[j].x2 && k[i].y >= k2[j].y1 && k[i].y <= k2[j].y2 ) { b[i]
+= 2 * (abs(k2[j].x1 - k2[j].x2) + abs(k2[j].y1 - k2[j].y2) ); break; } } } sort(b , b + n , cmp); for(int i = 0 ; i < n ; i ++) cout << b[i] << endl; } }

HDU2555 人人都能參加第30屆校田徑運動會了