[R59A] 好串

  • 难度 入门
  • 时限 1s
  • 空限 512m
  • 字符串

数据规模:1S10001 \le |S| \le 1000SS 只包含大写字母。

思路

坏串的定义是存在某个 1i<n1 \le i < n 使 Ti=WT_i = \texttt{W}Ti+1=AT_{i + 1} = \texttt{A},即字符串中出现连续子串 WA。因此只需判断 SS 是否包含子串 WA:包含则输出 NO,否则输出 YES

直接用字符串的子串查找 contains("WA") 即可,无需逐字符扫描。

复杂度:时间 O(S)O(|S|),空间 O(1)O(1)

仓颉实现

import std.env.*

main(): Int64 {
    let s = getStdIn().readln().getOrThrow()
    println(if (s.contains("WA")) { "NO" } else { "YES" })
    return 0
}