CF1746A Maxmina

题目描述

给定一个只包含 $0$ 和 $1$ 的长度为 $n$ 的数组 $a$,以及一个整数 $k$。你可以进行以下两种操作之一: - 选择 $a$ 中相邻的 $2$ 个元素,并用它们的最小值替换这两个元素(即 $a := [a_{1}, a_{2}, \ldots, a_{i-1}, \min(a_{i}, a_{i+1}), a_{i+2}, \ldots, a_{n}]$,其中 $1 \le i \le n-1$)。此操作会使 $a$ 的长度减少 $1$。 - 选择 $a$ 中相邻的 $k$ 个元素,并用它们的最大值替换这 $k$ 个元素(即 $a := [a_{1}, a_{2}, \ldots, a_{i-1}, \max(a_{i}, a_{i+1}, \ldots, a_{i+k-1}), a_{i+k}, \ldots, a_{n}]$,其中 $1 \le i \le n-k+1$)。此操作会使 $a$ 的长度减少 $k-1$。 请判断,经过若干次(可以为零次)操作后,是否可以将 $a$ 变为 $[1]$。

输入格式

每组测试数据包含多组测试用例。第一行包含一个整数 $t$($1 \le t \le 1000$),表示测试用例的数量。 每组测试用例的第一行包含两个整数 $n$ 和 $k$($2 \le k \le n \le 50$),分别表示数组 $a$ 的长度和第二种操作可作用的连续区间长度。 第二行包含 $n$ 个整数 $a_{1}, a_{2}, \ldots, a_{n}$($a_i$ 为 $0$ 或 $1$),表示数组 $a$ 的元素。

输出格式

对于每组测试用例,如果可以将 $a$ 变为 $[1]$,输出 "YES";否则输出 "NO"。

说明/提示

在第一个测试用例中,你可以对第 $2$ 和第 $3$ 个元素执行第二种操作,使 $a$ 变为 $[0, 1]$,然后对第 $1$ 和第 $2$ 个元素执行第二种操作,使 $a$ 变为 $[1]$。 在第四个测试用例中,很明显无论怎么操作都无法得到 $1$。 在第五个测试用例中,你可以先对前 $3$ 个元素执行第二种操作,使 $a$ 变为 $[1, 0, 0, 1]$,然后对第 $2$ 到第 $4$ 个元素执行第二种操作,使 $a$ 变为 $[1, 1]$,最后对剩下的两个元素执行第一种操作,使 $a$ 变为 $[1]$。 由 ChatGPT 4.1 翻译