atcoder#ARC157C. [ARC157C] YY Square
[ARC157C] YY Square
配点 : 点
問題文
行 列のマス目の各マスに X
, Y
のいずれかの文字が書かれています.
上から 行目,左から 列目のマスを で表します.
マス目に書かれている文字は 個の文字列 によって与えられ, の 文字目がマス に書かれた文字を表します.
下または右に隣接するマスへの移動を繰り返してマス からマス に至る経路 に対して,
- 「 で通るマスに書かれた文字を順に並べて得られる長さ の文字列」を とし,
- 「 中で
Y
同士が隣り合う箇所の個数の 2 乗」を のスコアと定義します.
そのような経路 としてあり得るものは 通りありますが,その全てに対するスコアの総和を で割った余りを求めてください.
$\binom{N}{K}$ の意味
\displaystyle\binom{N}{K}$$$$N$$$$K制約
- は
X
,Y
からなる長さ の文字列である.
入力
入力は以下の形式で標準入力から与えられる.
出力
あり得る経路全てに対するスコアの総和を で割った余りを出力せよ.
2 2
YY
XY
4
経路 としてあり得るものは と の 通りです.
- の場合,
YYY
であり, 文字目と 文字目の 箇所でY
同士が隣り合っているので,スコアは です. - の場合,
YXY
であり,Y
同士が隣り合う箇所は無いので,スコアは です.
したがって,求める総和は となります.
2 2
XY
YY
2
通りのいずれの経路の場合も XYY
であり,スコアは です.
10 20
YYYYYYYYYYYYYYYYYYYY
YYYYYYYYYYYYYYYYYYYY
YYYYYYYYYYYYYYYYYYYY
YYYYYYYYYYYYYYYYYYYY
YYYYYYYYYYYYYYYYYYYY
YYYYYYYYYYYYYYYYYYYY
YYYYYYYYYYYYYYYYYYYY
YYYYYYYYYYYYYYYYYYYY
YYYYYYYYYYYYYYYYYYYY
YYYYYYYYYYYYYYYYYYYY
423787835
スコアの総和を で割った余りを出力してください.