码迷,mamicode.com
首页 > 其他好文 > 详细

swust oj 188--异面空间(读懂题意很重要)

时间:2015-06-12 22:11:41      阅读:108      评论:0      收藏:0      [点我收藏+]

标签:

 

题目链接:http://acm.swust.edu.cn/problem/188/

Time limit(ms): 1000      Memory limit(kb): 65535
 
江鸟来到了一个很奇怪的星球,这个星球上,有两个二维坐标系XX和YY,这两个坐标系之间的坐标存在如下函数关系式: 
f(x)=x^2+2*x+3 
f(y)=3*y+2 
比如对于XX坐标系上的点(3,4)经过这一关系映射后得到YY坐标系上的点为(18,14)。这个映射关系一;同时,还有种映射关系是对于X坐标系上的点(a,b)和YY坐标系上的点(c,d)他们之间的距离为D=|a-d|+|b-c|。这是映射关系二. 
因为对于XX坐标系上的每个点,在YY坐标系上都有唯一的点和它对应,现在对于XX和YY上的点按照映射关系二进行匹配,并且XX上的每个点都仅和YY上的一个点进行匹配,YY上的每个点也仅和XX上的一个点进行匹配,现在你的任务是找出所有可能匹配关系中D最大值的最小。 
Description
第一行输入一个数case,代表下面测试数据的总数,以下每个case由两部分组成: 
第一部分输入N,代表XX坐标系上有多少个点(1<=N<=100) 
第二部分输入XX坐标系上这N个点的坐标 (xi,yi)(0<=xi<=500,0<=yi<=500) 
Input
所有可能匹配关系中D最大值的最小
Output
1
2
3
4
5
1
2
3 4
1 2
 
Sample Input
1
25
Sample Output
 
 
解题思路:按照题意来就是了,但是所有  匹配关系中D最大值的最小  没懂起意思(各种wa),我也是醉了~~
     求出所有的对应点,原点集和映射点集一一比对,有最大D时,
     求此时原来的点对应映射点集的最小D
     en~~,没听懂就看看代码吧,就这样~~~
 
代码如下:
技术分享
 1 #include <iostream>
 2 #include <cmath>
 3 using namespace std;
 4  
 5 inline int mapping_x(int x){
 6     return x*(x + 2) + 3;
 7 }
 8 inline int mapping_y(int y){
 9     return 3 * y + 2;
10 }
11 inline int mapping_dis(int x, int y){
12     return abs(x - y);
13 }
14 int main(){
15     int t, n, i, j, k, maxn, Max, ptr[101][4];
16     cin >> t;
17     while (t--){
18         cin >> n;
19         Max = 0x7ffffff;
20         for (i = 0; i < n; i++){
21             cin >> ptr[i][0] >> ptr[i][1];
22             ptr[i][2] = mapping_x(ptr[i][0]);
23             ptr[i][3] = mapping_y(ptr[i][1]);
24         }
25         for (i = 0; i < n; i++){
26             for (maxn = j = 0; j < n; j++){
27                 k = mapping_dis(ptr[i][0], ptr[j][3]) + mapping_dis(ptr[i][1], ptr[j][2]);
28                 maxn = maxn>k ? maxn : k;
29             }
30             Max = Max < maxn ? Max : maxn;
31         }
32         cout << Max << endl;
33     }
34     return 0;
35 }
View Code

 

swust oj 188--异面空间(读懂题意很重要)

标签:

原文地址:http://www.cnblogs.com/zYx-ac/p/4572519.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!