AT_keyence2021_f Keyence Repetition
Description
[problemUrl]: https://atcoder.jp/contests/keyence2021/tasks/keyence2021_f
$ s $ を `keyence` を $ N $ 回繰り返した文字列とします。 $ s $ の $ 0 $ 個以上の文字を削除した後、残った文字を元の順序を保ったまま連結して新しい文字列 $ s^{\prime} $ を作ることを考えます。
削除する位置の選び方は $ 2^{7N} $ 通りあります。これらのうち、$ s^{\prime} $ が $ t $ と一致するようなものの個数を $ 998244353 $ で割ったあまりを求めてください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ t $
Output Format
削除する位置の選び方のうち、$ s^{\prime} $ が $ t $ と一致するようなものの個数を $ 998244353 $ で割ったあまりを出力せよ。
Explanation/Hint
### 制約
- $ 1\ \leq\ N\ \leq\ 10^{18} $
- $ 1\ \leq\ |t|\ \leq\ 2.5\ \times\ 10^5 $
- $ t $ は `c`, `e`, `k`, `n`, `y` のみからなる文字列
### Sample Explanation 1
\- $ s= $ `keyencekeyence` です。 - $ s^{\prime}= $ `key` となるような削除する位置の選び方は $ 6 $ 通りです。
### Sample Explanation 2
\- $ s^{\prime}= $ `ccc` となるような削除する位置の選び方は $ 0 $ 通りです。
### Sample Explanation 3
\- $ 998244353 $ で割ったあまりを求めるのを忘れずに。