NYOJ 街区最短路径问题 南工7
2013-04-23 19:31
330 查看
题目链接:here~~
求出中间的x和中间的y,求各个点到这个点的距离和。。。
#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std;
struct cd
{
int x, y;
}a[20];
bool cmp1(cd c, cd d)
{
return c.x<d.x;
}
bool cmp2(cd c, cd d)
{
return c.y<d.y;
}
int main()
{
int n, m, i, j, sum;
cin>>n;
while (n--)
{
cin>>m;
for (i=0; i<m; i++)
cin>>a[i].x>>a[i].y;
sort(a, a+m, cmp1);
int c=a[m/2].x;
sort(a, a+m, cmp2);
int d=a[m/2].y;
sum=0;
for (i=0; i<m; i++)
sum+=abs(c-a[i].x)+abs(d-a[i].y);
cout<<sum<<endl;
}
return 0;
}
求出中间的x和中间的y,求各个点到这个点的距离和。。。
#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std;
struct cd
{
int x, y;
}a[20];
bool cmp1(cd c, cd d)
{
return c.x<d.x;
}
bool cmp2(cd c, cd d)
{
return c.y<d.y;
}
int main()
{
int n, m, i, j, sum;
cin>>n;
while (n--)
{
cin>>m;
for (i=0; i<m; i++)
cin>>a[i].x>>a[i].y;
sort(a, a+m, cmp1);
int c=a[m/2].x;
sort(a, a+m, cmp2);
int d=a[m/2].y;
sum=0;
for (i=0; i<m; i++)
sum+=abs(c-a[i].x)+abs(d-a[i].y);
cout<<sum<<endl;
}
return 0;
}
相关文章推荐
- nyoj 7 街区最短路径问题 【数学】
- 【ACM】nyoj_7_街区最短路径问题_201308051737
- NYOJ7街区最短路径问题
- NYOJ 7 街区最短路径问题
- NYoj 7街区最短路径问题
- nyoj7 街区最短路径问题
- NYOJ - 7 - 街区最短路径问题 ( 曼哈顿距离 )
- NYOJ-街区最短路径问题
- nyoj 7 街区最短路径问题
- NYOJ7街区最短路径问题
- nyoj-7-街区最短路径问题
- NYOJ 7 街区最短路径问题
- nyoj 7 街区最短路径问题
- NYOJ 7-街区最短路径问题(曼哈顿距离)
- NYOJ 7 街区最短路径问题
- nyoj 7 街区最短路径问题【大水】
- nyoj7_街区最短路径问题
- NYOJ 7 街区最短路径问题(数学问题)
- NYOJ 7 街区最短路径问题
- 街区最短路径问题(nyoj 7)