AT_abc310_e [ABC310E] NAND repeatedly
题目描述
给定一个由 `0` 和 `1` 组成的长度为 $N$ 的字符串 $S$。$S$ 表示一个长度为 $N$ 的数列 $A=(A_1,A_2,\ldots,A_N)$,其中 $S$ 的第 $i$ 个字符($1\leq i\leq N$)为 `0` 时 $A_i=0$,为 `1` 时 $A_i=1$。
请计算下式的值:
$$
\sum_{1\leq i\leq j\leq N}(\cdots((A_i\barwedge A_{i+1})\barwedge A_{i+2})\barwedge\cdots\barwedge A_j)
$$
更严格地说,对于如下定义的 $f(i,j)\ (1\leq i\leq j\leq N)$,请计算 $\displaystyle\sum_{i=1}^{N}\sum_{j=i}^{N}f(i,j)$。
$$
f(i,j)=\left\{
\begin{matrix}
A_i & (i=j)\\
f(i,j-1)\barwedge A_j & (i
输入格式
输入以如下格式从标准输入读入。
> $N$ $S$
输出格式
请输出答案,输出一行。
说明/提示
### 限制条件
- $1\leq N\leq 10^6$
- $S$ 是由 `0` 和 `1` 组成的长度为 $N$ 的字符串
- 输入均为整数
### 样例解释 1
对于所有满足 $1\leq i\leq j\leq N$ 的 $(i,j)$ 组合,$f(i,j)$ 的值如下所示:
- $f(1,1)=0=0$
- $f(1,2)=0\barwedge0=1$
- $f(1,3)=(0\barwedge0)\barwedge1=0$
- $f(1,4)=((0\barwedge0)\barwedge1)\barwedge1=1$
- $f(1,5)=(((0\barwedge0)\barwedge1)\barwedge1)\barwedge0=1$
- $f(2,2)=0=0$
- $f(2,3)=0\barwedge1=1$
- $f(2,4)=(0\barwedge1)\barwedge1=0$
- $f(2,5)=((0\barwedge1)\barwedge1)\barwedge0=1$
- $f(3,3)=1=1$
- $f(3,4)=1\barwedge1=0$
- $f(3,5)=(1\barwedge1)\barwedge0=1$
- $f(4,4)=1=1$
- $f(4,5)=1\barwedge0=1$
- $f(5,5)=0=0$
这些值的总和为 $0+1+0+1+1+0+1+0+1+1+0+1+1+1+0=9$,因此请输出 $9$。
请注意,$\barwedge$ 不满足结合律。例如,$(1\barwedge1)\barwedge0=0\barwedge0=1\neq0=1\barwedge1=1\barwedge(1\barwedge0)$。
由 ChatGPT 4.1 翻译