中位数模型

货仓选址

有一个结论:一条线上的n个点,要选取某一个点,使得所有点到这个点的距离之和最小,那么这个点一定在中间。

如果n%2==0,就是中间2个之间的任意点都可以。

如果n%2==1,就是正中间那个点。

具体的证明我就不再赘述。。。(大概想想就好了嗯)

所以这个题就直接用这个结论啊。。。

然后看一个变种:Soldiers POJ1723

首先这玩意是二维的,我们可以一维一维考虑。

首先y一定是选中位数(理由同上)

然后我们就将问题转化成了一维的。现在题目多了一个限制,就是相邻的必须间隔1。毫无疑问:1.第一个点的位置确定,大家的位置就都确定了。2.点的相对位置不变(emmm这不不难吧。。。)

那么我们设第一个是a+1,第二个是a+2,第i个是a+i。要求的是a使得位移总和最小。

那如果我们把第i个数都减去i,我们会发现我们需要求解答问题依然是上面的。

over。

(好神奇orz)

 

你可能感兴趣的:(奇技淫巧)