AT_abc120_c [ABC120C] Unification

题目描述

桌子上竖直堆放着 $N$ 个立方体。给定一个长度为 $N$ 的字符串 $S$。 从下往上数,第 $i$ 个立方体的颜色由 $S$ 的第 $i$ 个字符决定:若为 `0`,则为红色;若为 `1`,则为蓝色。 你可以多次选择一对相邻的红色和蓝色立方体,并将这两个立方体一起移除。 此时,被移除立方体上方的立方体会直接落到下方物体的上面。 最多可以移除多少个立方体?

输入格式

输入为以下格式,从标准输入读入。 > $S$

输出格式

输出最多可以移除的立方体个数。

说明/提示

## 限制条件 - $1 \leq N \leq 10^5$ - $|S| = N$ - $S$ 的每个字符都是 `0` 或 `1`。 ## 样例解释 1 按如下顺序操作,可以将全部 $4$ 个立方体移除。 - 先移除从下往上数第 $2$ 个和第 $3$ 个立方体。此时,从下往上数第 $4$ 个立方体会落到第 $1$ 个立方体上。 - 再移除从下往上数第 $1$ 个和第 $2$ 个立方体。 由 ChatGPT 4.1 翻译