AT_kupc2024_j Joint for KUPC
Description
`K`, `U`, `P`, `C` からなる文字列 $ S $ が与えられます。正整数 $ k $ について、この $ S $ を $ k $ 回連続で並べた文字列を $ S^k $ と呼びます。
長さ $ L $ の `K`, `U`, `P`, `C` からなる文字列全体の集合 $ U $ を考えます ( $ U $ は $ 4^L $ 個の文字列からなります )。
$ S^k $ が $ U $ の全ての要素を (連続でなくともよい) 部分列として含む時、 $ k $ としてありうる最小値を求めてください。
但し、そのような $ k $ が存在しない場合は代わりに `-1` と出力してください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ S $ $ L $
Output Format
答えを出力せよ。
Explanation/Hint
### Sample Explanation 1
この入力では、 $ S= $ `KUPCCPUK` 、 $ L=3 $ です。
- $ S^1= $ `KUPCCPUK` 、 $ S^2= $ `KUPCCPUKKUPCCPUK` 、 $ \dots $ です。
- $ U $ の要素のうち、例えば `KCC` は $ S^1 $ に部分列として含まれます。
- $ U $ の要素のうち、例えば `UUP` は $ S^1 $ に部分列として含まれませんが、 $ S^2 $ には部分列として含まれます。
- $ U $ の $ 4^3 $ 個の要素全てが $ S^2 $ に部分列として含まれます。
以上より、答えは $ 2 $ です。
### Sample Explanation 2
この入力では、 $ S= $ `UUUPPPCCC` 、 $ L=4 $ です。
`KCPC` は $ U $ の要素ですが、どのような正整数 $ k $ についても、 $ S^k $ が `KCPC` を部分列として含むことはありません。よって、 `-1` と出力します。
### Constraints
- $ S $ は `K`, `U`, `P`, `C` からなる長さ $ 1 $ 以上 $ 5 \times 10^5 $ 以下の文字列
- $ L $ は $ 1 \le L \le 10^{18} $ を満たす整数