CF1132G.Greedy Subsequences

提高+/省选-

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

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

题目描述

For some array cc, let's denote a greedy subsequence as a sequence of indices p1p_1, p2p_2, ..., plp_l such that 1≤p1<p2<⋯<pl≤∣c∣1 \le p_1 \lt p_2 \lt \dots \lt p_l \le |c|, and for each i∈[1,l−1]i \in [1, l - 1], pi+1p_{i + 1} is the minimum number such that pi+1>pip_{i + 1} \gt p_i and c[pi+1]>c[pi]c[p_{i + 1}] \gt c[p_i].

You are given an array a1,a2,…,ana_1, a_2, \dots, a_n. For each its subsegment of length kk, calculate the length of its longest greedy subsequence.

对于某个数组 cc,我们定义其“贪心子序列”为一组下标序列 p1,p2,…,plp_1, p_2, \dots, p_l,满足 1≤p1<p2<⋯<pl≤∣c∣1 \le p_1 \lt p_2 \lt \dots \lt p_l \le |c|,且对每个 i∈[1,l−1]i \in [1, l - 1],pi+1p_{i + 1} 是满足 pi+1>pip_{i + 1} \gt p_i 且 c[pi+1]>c[pi]c[p_{i + 1}] \gt c[p_i] 的最小下标。

给定一个数组 a1,a2,…,ana_1, a_2, \dots, a_n。对它的每一个长度为 kk 的连续子段,计算该子段的最长贪心子序列的长度。

输入格式

The first line contains two integers nn and kk (1≤k≤n≤1061 \le k \le n \le 10^6) — the length of array aa and the length of subsegments.

The second line contains nn integers a1,a2,…,ana_1, a_2, \dots, a_n (1≤ai≤n1 \le a_i \le n) — array aa.

第一行包含两个整数 nn 和 kk(1≤k≤n≤1061 \le k \le n \le 10^6)—— 分别表示数组 aa 的长度以及子区间的长度。

第二行包含 nn 个整数 a1,a2,…,ana_1, a_2, \dots, a_n(1≤ai≤n1 \le a_i \le n)—— 数组 aa。

输出格式

Print n−k+1n - k + 1 integers — the maximum lengths of greedy subsequences of each subsegment having length kk. The first number should correspond to subsegment a[1..k]a[1..k], the second — to subsegment a[2..k+1]a[2..k + 1], and so on.

输出 n−k+1n - k + 1 个整数——每个长度为 kk 的子段的贪心子序列的最大长度。第一个数对应子段 a[1..k]a[1..k],第二个数对应子段 a[2..k+1]a[2..k + 1],依此类推。

输入输出样例

  • 输入#1

    6 4
    1 5 2 5 3 6

    输出#1

    2 2 3
  • 输入#2

    7 6
    4 5 2 5 3 6 6

    输出#2

    3 3

说明/提示

In the first example:

  • [1,5,2,5][1, 5, 2, 5] — the longest greedy subsequences are 1,21, 2 ([c1,c2]=[1,5][c_1, c_2] = [1, 5]) or 3,43, 4 ([c3,c4]=[2,5][c_3, c_4] = [2, 5]).
  • [5,2,5,3][5, 2, 5, 3] — the sequence is 2,32, 3 ([c2,c3]=[2,5][c_2, c_3] = [2, 5]).
  • [2,5,3,6][2, 5, 3, 6] — the sequence is 1,2,41, 2, 4 ([c1,c2,c4]=[2,5,6][c_1, c_2, c_4] = [2, 5, 6]).

In the second example:

  • [4,5,2,5,3,6][4, 5, 2, 5, 3, 6] — the longest greedy subsequences are 1,2,61, 2, 6 ([c1,c2,c6]=[4,5,6][c_1, c_2, c_6] = [4, 5, 6]) or 3,4,63, 4, 6 ([c3,c4,c6]=[2,5,6][c_3, c_4, c_6] = [2, 5, 6]).
  • [5,2,5,3,6,6][5, 2, 5, 3, 6, 6] — the subsequence is 2,3,52, 3, 5 ([c2,c3,c5]=[2,5,6][c_2, c_3, c_5] = [2, 5, 6]).

在第一个例子中:

  • [1,5,2,5][1, 5, 2, 5] — 最长贪心子序列为 1,21, 2(对应 [c1,c2]=[1,5][c_1, c_2] = [1, 5])或 3,43, 4(对应 [c3,c4]=[2,5][c_3, c_4] = [2, 5])。
  • [5,2,5,3][5, 2, 5, 3] — 子序列为 2,32, 3(对应 [c2,c3]=[2,5][c_2, c_3] = [2, 5])。
  • [2,5,3,6][2, 5, 3, 6] — 子序列为 1,2,41, 2, 4(对应 [c1,c2,c4]=[2,5,6][c_1, c_2, c_4] = [2, 5, 6])。

在第二个例子中:

  • [4,5,2,5,3,6][4, 5, 2, 5, 3, 6] — 最长贪心子序列为 1,2,61, 2, 6(对应 [c1,c2,c6]=[4,5,6][c_1, c_2, c_6] = [4, 5, 6])或 3,4,63, 4, 6(对应 [c3,c4,c6]=[2,5,6][c_3, c_4, c_6] = [2, 5, 6])。
  • [5,2,5,3,6,6][5, 2, 5, 3, 6, 6] — 子序列为 2,3,52, 3, 5(对应 [c2,c3,c5]=[2,5,6][c_2, c_3, c_5] = [2, 5, 6])。

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

首页