题库练习 Chaotic Merge
← 上一题 下一题 →

A14265 | Chaotic Merge

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

You are given two strings $x$ and $y$ , both consist only of lowercase Latin letters. Let $|s|$ be the length of string $s$ .

Let's call a sequence $a$ a merging sequence if it consists of exactly $|x|$ zeros and exactly $|y|$ ones in some order.

A merge $z$ is produced from a sequence $a$ by the following rules:

- if $a_i=0$ , then remove a letter from the beginning of $x$ and append it to the end of $z$ ;
- if $a_i=1$ , then remove a letter from the beginning of $y$ and append it to the end of $z$ .

Two merging sequences $a$ and $b$ are different if there is some position $i$ such that $a_i \neq b_i$ .

Let's call a string $z$ chaotic if for all $i$ from $2$ to $|z|$ $z_{i-1} \neq z_i$ .

Let $s[l,r]$ for some $1 \le l \le r \le |s|$ be a substring of consecutive letters of $s$ , starting from position $l$ and ending at position $r$ inclusive.

Let $f(l_1, r_1, l_2, r_2)$ be the number of different merging sequences of $x[l_1,r_1]$ and $y[l_2,r_2]$ that produce chaotic merges. Note that only non-empty substrings of $x$ and $y$ are considered.

Calculate $\sum \limits_{1 \le l_1 \le r_1 \le |x| \\ 1 \le l_2 \le r_2 \le |y|} f(l_1, r_1, l_2, r_2)$ . Output the answer modulo $998\,244\,353$ .

输入格式

The first line contains a string $x$ ( $1 \le |x| \le 1000$ ).

The second line contains a string $y$ ( $1 \le |y| \le 1000$ ).

Both strings consist only of lowercase Latin letters.

输出格式

Print a single integer — the sum of $f(l_1, r_1, l_2, r_2)$ over $1 \le l_1 \le r_1 \le |x|$ and $1 \le l_2 \le r_2 \le |y|$ modulo $998\,244\,353$ .

输入输出样例

输入 #1
aaa
bb
输出 #1
24
输入 #2
code
forces
输出 #2
1574
输入 #3
aaaaa
aaa
输出 #3
0
输入 #4
justamassivetesttocheck
howwellyouhandlemodulooperations
输出 #4
667387032
C++ 编辑器
输入
输出