poj1723

原创 2012年03月21日 19:03:34
#include<iostream>
#include<algorithm>
using namespace std;

int N,x[10000],y[10000],rx,ry,t,sum;
int main(){
	cin>>N;	
	for(int i=0;i<N;i++){
		cin>>x[i]>>y[i];	
	}
	sort(y,y+N);
	ry=y[N/2];
	sort(x,x+N);
	for(int i=0;i<N;i++){	
		x[i]-=i;
	}
	sort(x,x+N);
	rx=x[N/2];	
	sum=0;
	for(int i=0;i<N;i++){
		t=y[i]-ry;
		if(t<0)
			t=-t;
		sum+=t;
	}
	for(int i=0;i<N;i++){
		t=x[i]-rx;
		if(t<0)
			t=-t;
		sum+=t;
	}
	cout<<sum<<endl;
	return 0;
}

很典型的一道题,算x起始位置也是找中位数

相关文章推荐

POJ1723.SOLDIERS 排序+思维

1.题目描述: SOLDIERS Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 8...

POJ1723,SOLDIERS,纯数学,猜想+证明

SOLDIERS Description N soldiers of the land Gridland are randomly scattered around the country. ...

POJ 1723 SOLDIERS

POJ 1723 SOLDIERS,士兵排队,很不错的一道数学题...

SOLDIERS_Java_C_POJ1723

SOLDIERSjava代码:import java.util.Scanner; import java.util.Arrays; public class Main { static Sca...

poj1723(士兵移动)

借鉴了别人的代码和思路    * 一 士兵有多种移动方式  * 通过适当的移动顺序和移动路线可以使得同一时刻不会有两名士兵站在同一点  * 二 题目要求最佳移动方式(即求移动的最少步数)  * 题目...
  • kath_y
  • kath_y
  • 2011年08月05日 20:11
  • 408

poj 1723 中位数

SOLDIERS Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 8960   Accep...

poj1723 中位数的应用

N soldiers of the land Gridland are randomly scattered around the country. A position in Gridland i...

POJ - 1723 Soldiers 士兵站队 排序+中位数

【问题描述】 在一个划分成网格的操场上,n个士兵散乱地站在网格点上。网格点由整数最表(x,y)表示。士兵可以沿着网格边上、下、左、右移动一步,但在同一时刻一个网格上只能有一名士兵。按照军官的命令,士...

foj 1055 赋值问题 &&1723 我就不信你能找得到 &&1063 三维扫描

Problem 1055 赋值问题 Accept: 1255    Submit: 6950 Time Limit: 1000 mSec    Memory Limit : 32768 KB ...

VS2008 助手 VA_X_Setup1723

  • 2009年08月20日 16:54
  • 4.51MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:poj1723
举报原因:
原因补充:

(最多只允许输入30个字)