| 题目名称 | 4412. 邮局 |
|---|---|
| 输入输出 | postoffice.in/out |
| 难度等级 | ★★★★ |
| 时间限制 | 2000 ms (2 s) |
| 内存限制 | 128 MiB |
| 测试数据 | 5 |
| 题目来源 |
|
| 开放分组 | 全部用户 |
| 提交状态 | |
| 分类标签 | |
| 分享题解 |
| 通过:2, 提交:4, 通过率:50% | ||||
|
|
100 | 0.880 s | 13.96 MiB | C++ |
|
|
100 | 1.078 s | 10.79 MiB | C++ |
|
|
80 | 0.625 s | 14.62 MiB | C++ |
|
|
60 | 0.454 s | 19.75 MiB | C++ |
| 关于 邮局 的近10条评论(全部评论) |
|---|
Kyouko 曾经有一个梦想:邮递员。
高速公路旁边有 $n$ 个村庄。高速公路表示为整数轴,每个村庄的位置用单个整数坐标表示。两个位置之间的距离是其整数坐标差的绝对值。
现在要建立 $m$ 个邮局,邮局将建在一些,但不一定是所有的村庄中。Kyouko 为了送邮件的时候轻松一些,打算选择他们建造的位置,使每个村庄与其最近的邮局之间的距离总和最小。
天才般的 Kyouko 秒杀了这个问题,所以这个问题给了你,你要编写一个程序,已知村庄的位置和邮局的数量,计算每个村庄和最近的邮局之间所有距离的最小可能的总和。
第一行包含两个整数,分别表示村庄的数量 $n$ 和邮局的数量 $m$。
第二行共 $n$ 个整数,表示每个村庄的坐标,第 $i$ 个整数表示第 $i$ 个村庄的坐标 $a_i$。
输出一行一个整数表示答案。
5 2 0 1 2 3 4
3
保证对于所有测试点 $1$:$n\le 50,0\le a_i\le 10^4$。
保证对于所有测试点 $2$:$n\le 500,0\le a_i\le 10^4$。
保证对于所有测试点 $3$:$n\le 2000,0\le a_i\le 10^4$。
保证对于所有测试点 $4$:$n\le 10^5,0\le a_i\le 2\times 10^6$。
保证对于所有测试点 $5$:$n\le 5\times 10^5,0\le a_i\le 2\times 10^6$。
IOI2020 邮局加强版。