CF1992D.Test of Love

普及-

通过率:0%

AC君温馨提醒

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

题目描述

ErnKor 愿意为 Julen 做任何事情,甚至愿意游过鳄鱼出没的沼泽。我们决定考验一下这份爱。ErnKor 需要横渡一条宽为 11 米、长为 nn 米的河流。

这条河非常寒冷。因此,在整个游泳过程中(即从 00 到 n+1n+1 米),ErnKor 在水中游泳的总距离不能超过 kk 米。为了人道起见,我们不仅在河里放了鳄鱼,还放了可以跳跃的木头。我们的测试如下:

一开始,ErnKor 站在左岸,需要到达右岸。两岸分别位于 00 米和 n+1n+1 米处。河流可以表示为 nn 个长度为 11 米的区段。每个区段上可能有木头 'L'、鳄鱼 'C' 或仅仅是水 'W'。ErnKor 的移动规则如下:

  • 如果他在岸上(即在岸边或在木头上),他可以向前跳跃不超过 mm 米(可以跳到岸上、木头上或水中)。
  • 如果他在水中,只能游到下一个河段(如果在第 nn 米处,可以游到对岸)。
  • ErnKor 不能以任何方式落在有鳄鱼的区段。

请判断 ErnKor 是否能顺利到达右岸。

输入格式

第一行包含一个整数 tt(1≤t≤1041 \le t \le 10^4),表示测试用例的数量。

每个测试用例的第一行包含三个整数 n,m,kn, m, k(0≤k≤2⋅1050 \le k \le 2 \cdot 10^5,1≤n≤2⋅1051 \le n \le 2 \cdot 10^5,1≤m≤101 \le m \le 10),分别表示河流的长度、ErnKor 能跳跃的最大距离,以及他能在水中游泳的最大距离。

每个测试用例的第二行包含一个长度为 nn 的字符串 aa。aia_i 表示第 ii 米处的物体(ai∈{’W’,’C’,’L’}a_i \in \{\text{'W'},\text{'C'},\text{'L'}\})。

保证所有测试用例中 nn 的总和不超过 2⋅1052 \cdot 10^5。

输出格式

对于每个测试用例,如果 ErnKor 能通过考验,输出 "YES";否则输出 "NO"。

输出不区分大小写。例如,"yEs"、"yes"、"Yes" 和 "YES" 都视为肯定回答。

输入输出样例

  • 输入#1

    6
    6 2 0
    LWLLLW
    6 1 1
    LWLLLL
    6 1 1
    LWLLWL
    6 2 15
    LWLLCC
    6 10 0
    CCCCCC
    6 6 1
    WCCCCW

    输出#1

    YES
    YES
    NO
    NO
    YES
    YES

说明/提示

我们来看几个例子:

  • 第一个例子:我们从岸边跳到第一个木头(0→10 \rightarrow 1),从第一个木头跳到第二个(1→31 \rightarrow 3),从第二个跳到第四个(3→53 \rightarrow 5),最后从最后一个木头跳到岸边(5→75 \rightarrow 7)。因此,路径为 0→1→3→5→70 \rightarrow 1 \rightarrow 3 \rightarrow 5 \rightarrow 7。由于没有遇到鳄鱼,且游泳距离不超过 kk 米,答案为「YES」。
  • 第二个例子:0→10 \rightarrow 1,从第一个木头跳入水中(1→21 \rightarrow 2),游泳到木头(2⇝32 \leadsto 3),3→4→5→6→73 \rightarrow 4 \rightarrow 5 \rightarrow 6 \rightarrow 7。由于没有遇到鳄鱼,且游泳距离不超过 kk 米,答案为「YES」。
  • 第三个例子,ErnKor 需要连续游过两个 'W',但只能游一个。因此答案为「NO」。
  • 第六个例子:我们从岸边直接跳入水中(0→60 \rightarrow 6),然后在水中游一格到岸边(6⇝76 \leadsto 7)。由于没有遇到鳄鱼,且游泳距离不超过 kk 米,答案为「YES」。

由 ChatGPT 4.1 翻译

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

首页