C - Let's Make a Palindrome
Editorial
Time Limit: 2 sec / Memory Limit: 1024 MB
配点 : 点
問題文
英小文字と ?
のみからなる文字列 が与えられます。
文字列 に含まれる ?
をそれぞれ好きな英小文字に置き換えることで作れる回文は何通りあるか求めてください。
ただし、答えは非常に大きくなる可能性があるので、 で割ったあまりを出力してください。
回文の定義
文字列 が回文であるとは、 を満たすすべての整数 について、 の前から 文字目の文字と後ろから 文字目の文字が同じ文字であることをいいます。制約
- は英小文字と
?
のみからなる
入力
入力は以下の形式で標準入力から与えられます。
出力
答えを で割ったあまり を 行に出力してください。
入力例 1Copy
Copy
a??
出力例 1Copy
Copy
26
aaa
、aba
、aca
など、全部で 通りの回文を作ることができます。
入力例 2Copy
Copy
atcoder
出力例 2Copy
Copy
0
回文を作ることはできません。
入力例 3Copy
Copy
?????????????
出力例 3Copy
Copy
45855352
答えを で割ったあまりを出力することに注意してください。