76 atcoder#ABC230B. [ABC230B] Triple Metre

[ABC230B] Triple Metre

题目描述

文字列 S S が文字列 T T の部分文字列であるとは、次の条件を満たすような整数 i, j i,\ j (1  i  j  T) 1\ \leq\ i\ \leq\ j\ \leq\ |T|) が存在することを言います。

  • T T i i 文字目から j j 文字目までを順番を変えずに抜き出してできる文字列が S S と一致する。

文字列 T T oxx105 10^5 個結合した文字列として定めます。
文字列 S S が与えられるので、 S S T T の部分文字列である場合は Yes を、そうでない場合は No を出力してください。

输入格式

入力は以下の形式で標準入力から与えられる。

S S

输出格式

S S が条件を満たす場合は Yes を、そうでない場合は No を出力せよ。

题目大意

有两个字符串 s,ts,t ,其中 ss 由输入给出, ttoxxoxxoxxoxx ... ( oxx 重复 10510^5 遍 )。问 ss 是否是 tt 的子串?

xoxxoxxo
Yes
xxoxxoxo
No
ox
Yes

提示

制約

  • S S ox のみからなる文字列である。
  • S S の長さは 1 1 以上 10 10 以下である。

Sample Explanation 1

T T のはじめの方を抜き出すと oxxoxxoxxoxx... となっています。 T T 3 3 文字目から 10 10 文字目までを抜き出した文字列は S S と一致するので、 S S T T の部分文字列です。よって Yes を出力します。

Sample Explanation 2

T T から文字列をどのように抜き出しても S S と一致しないので、S S T T の部分文字列でありません。よって No を出力します。