Universal Cup Judging System

Universal Cup

Time Limit: 2.0 s Memory Limit: 1024 MB Total points: 100 Hackable ✓
Statistics

人生は常に不確実性に満ちています。例えば、問題タイトルからこれは文字列の問題だと思うかもしれませんが、実際にはそうではありません。

文字列 $s$ と文字 $c$ が与えられます。毎回、まだ選ばれていない位置 $i$ をランダムに 1 つ選び、$s_i$ を $c$ に変更します(もともと $s_i = c$ であったとしても 1 回の操作として数えます)。$s$ が回文になるまでこの操作を繰り返し、回文になった時点で終了します。必要な操作回数の期待値を求めてください。

特に、最初から $s$ がすでに回文である場合、答えは $0$ です。

入力

1 行目には文字列 $s$($1 \le |s| \le 250000$)が与えられます。$s$ は英小文字のみからなることが保証されます。

2 行目には英小文字 $c$ が与えられます。

出力

期待値を $998244353$ で割った余りを表す整数を 1 行に出力してください。

入出力例

入力 1

abcab
a

出力 1

4

入力 2

abcdcbd
a

出力 2

177465668

入力 3

aba
z

出力 3

0

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.