CF1066E Binary Numbers AND Sum
题目描述
## 题目大意
现在,给你两个位数为 $n$ 和 $m$ 的两个二进制数$a$,$b$,现在,我们要进行如下操作:
* 计算$a$&$b$
* 答案累加上一个操作的值
* $b$右移一位,最后一位直接舍弃
现在,请你算出最终的答案,并输出,答案对998244353取模
输入格式
第一行,两个整数$n$,$m$,$(1≤n,m≤2 \times 10^5)$
第一行,一个长度为$n$的二进制数$a$
第一行,一个长度为$m$的二进制数$b$
输出格式
一行,一个数,表示答案
说明/提示
The algorithm for the first example:
1. add to the answer $ 1010_2~ \&~ 1101_2 = 1000_2 = 8_{10} $ and set $ b := 110 $ ;
2. add to the answer $ 1010_2~ \&~ 110_2 = 10_2 = 2_{10} $ and set $ b := 11 $ ;
3. add to the answer $ 1010_2~ \&~ 11_2 = 10_2 = 2_{10} $ and set $ b := 1 $ ;
4. add to the answer $ 1010_2~ \&~ 1_2 = 0_2 = 0_{10} $ and set $ b := 0 $ .
So the answer is $ 8 + 2 + 2 + 0 = 12 $ .
The algorithm for the second example:
1. add to the answer $ 1001_2~ \&~ 10101_2 = 1_2 = 1_{10} $ and set $ b := 1010 $ ;
2. add to the answer $ 1001_2~ \&~ 1010_2 = 1000_2 = 8_{10} $ and set $ b := 101 $ ;
3. add to the answer $ 1001_2~ \&~ 101_2 = 1_2 = 1_{10} $ and set $ b := 10 $ ;
4. add to the answer $ 1001_2~ \&~ 10_2 = 0_2 = 0_{10} $ and set $ b := 1 $ ;
5. add to the answer $ 1001_2~ \&~ 1_2 = 1_2 = 1_{10} $ and set $ b := 0 $ .
So the answer is $ 1 + 8 + 1 + 0 + 1 = 11 $ .