CF1110B.Tape

普及/提高-

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You have a long stick, consisting of mm segments enumerated from 11 to mm. Each segment is 11 centimeter long. Sadly, some segments are broken and need to be repaired.

You have an infinitely long repair tape. You want to cut some pieces from the tape and use them to cover all of the broken segments. To be precise, a piece of tape of integer length tt placed at some position ss will cover segments s,s+1,…,s+t−1s, s+1, \ldots, s+t-1.

You are allowed to cover non-broken segments; it is also possible that some pieces of tape will overlap.

Time is money, so you want to cut at most kk continuous pieces of tape to cover all the broken segments. What is the minimum total length of these pieces?

你有一根长棍,由 mm 个编号从 11 到 mm 的小段组成。每段长度为 11 厘米。不幸的是,其中一些小段已损坏,需要修复。

你拥有一卷无限长的修复胶带。你想从胶带上裁剪出若干段,并用它们覆盖所有损坏的小段。具体而言,一段长度为整数 tt 的胶带若起始位置为 ss,则它将覆盖小段 s,s+1,…,s+t−1s, s+1, \ldots, s+t-1。

允许胶带覆盖未损坏的小段;也允许不同胶带段之间相互重叠。

时间就是金钱,因此你最多只能裁剪 kk 段连续的胶带以覆盖所有损坏的小段。这些胶带段的总长度最小是多少?

输入格式

The first line contains three integers nn, mm and kk (1≤n≤1051 \le n \le 10^5, n≤m≤109n \le m \le 10^9, 1≤k≤n1 \le k \le n) — the number of broken segments, the length of the stick and the maximum number of pieces you can use.

The second line contains nn integers b1,b2,…,bnb_1, b_2, \ldots, b_n (1≤bi≤m1 \le b_i \le m) — the positions of the broken segments. These integers are given in increasing order, that is, b1<b2<…<bnb_1 \lt b_2 \lt \ldots \lt b_n.

第一行包含三个整数 nn、mm 和 kk(1≤n≤1051 \le n \le 10^5,n≤m≤109n \le m \le 10^9,1≤k≤n1 \le k \le n)—— 分别表示断裂点的数量、木棍的长度以及最多可使用的段数。

第二行包含 nn 个整数 b1,b2,…,bnb_1, b_2, \ldots, b_n(1≤bi≤m1 \le b_i \le m)—— 表示各断裂点的位置。这些整数按严格递增顺序给出,即 b1<b2<…<bnb_1 \lt b_2 \lt \ldots \lt b_n。

输出格式

Print the minimum total length of the pieces.

输出各段的最小总长度。

输入输出样例

  • 输入#1

    4 100 2
    20 30 75 80

    输出#1

    17
  • 输入#2

    5 100 3
    1 2 4 60 87

    输出#2

    6

说明/提示

In the first example, you can use a piece of length 1111 to cover the broken segments 2020 and 3030, and another piece of length 66 to cover 7575 and 8080, for a total length of 1717.

In the second example, you can use a piece of length 44 to cover broken segments 11, 22 and 44, and two pieces of length 11 to cover broken segments 6060 and 8787.

在第一个例子中,你可以使用一段长度为 1111 的修补材料覆盖破损段 2020 和 3030,再用一段长度为 66 的修补材料覆盖破损段 7575 和 8080,总长度为 1717。

在第二个例子中,你可以使用一段长度为 44 的修补材料覆盖破损段 11、22 和 44,再用两段长度均为 11 的修补材料分别覆盖破损段 6060 和 8787。

输入解题思路,AI测评打分。不知道怎么写?

首页