CF363B Fence

题目描述

在 Polycarpus 家门前有一排栅栏。栅栏由 $n$ 块宽度相同的木板组成,这些木板从左到右依次排放。第 $i$ 块木板的高度为 $h_{i}$ 米,不同的木板高度可以不同。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF363B/89891f9a8aa0dbd268db12cc4f373a8fc8629b6b.png) 当 $n=7$ 且 $h=[1,2,6,1,1,7,1]$ 时的栅栏示意图。 Polycarpus 买了一架高级钢琴,正在思考如何把它搬进家。为此,他需要从栅栏上拆掉连续的 $k$ 块木板。高度更高的木板更难拆卸,因此 Polycarpus 希望找到一组连续的 $k$ 块木板,使得它们的高度总和尽可能小。 请编写程序,找出这组总高度最小的连续 $k$ 块木板的编号。 请注意,栅栏不是围绕 Polycarpus 的房子设立的,只是在门前(换句话说,栅栏不是环状的)。

输入格式

第一行包含整数 $n$ 和 $k$($1 \leq n \leq 1.5 \times 10^{5}$,$1 \leq k \leq n$),分别表示栅栏木板的数量和钢琴所需的孔宽(即要拆掉的连续木板数量)。 第二行包含 $n$ 个整数 $h_{1}, h_{2}, \ldots, h_{n}$($1 \leq h_{i} \leq 100$),其中 $h_{i}$ 表示第 $i$ 块木板的高度。

输出格式

输出一个整数 $j$,表示从第 $j$ 块木板开始的连续 $k$ 块木板,其高度总和最小。如果有多个符合条件的答案,输出其中任意一个即可。

说明/提示

样例中要求找到和最小的三块连续木板。在给定情况下,编号为 3、4 和 5 的三块木板的高度和为 8,满足要求。 由 ChatGPT 5 翻译