Score : 1700 points
You have two strings A = A_1 A_2 ... A_n and B = B_1 B_2 ... B_n of the same length consisting of 0 and 1. The number of 1's in A and B is equal.
You've decided to transform A using the following algorithm:
Let P be the probability that strings A and B become equal after the procedure above.
Let Z = P \times (k!)^2. Clearly, Z is an integer.
Find Z modulo 998244353.
Input is given from Standard Input in the following format:
A B
Print the value of Z modulo 998244353.
1010 1100
3
After the first two steps, a = [1, 3] and b = [1, 2]. There are 4 possible scenarios after shuffling a and b:
Out of 4 scenarios, 3 of them result in A = B. Therefore, P = 3 / 4, and Z = 3.
01001 01001
4
No swap ever changes A, so we'll always have A = B.
101010 010101
36
Every possible sequence of three swaps puts the 1's in A into the right places.
1101011011110 0111101011101
932171449