CF2230B Digit String

题目描述

你有一个由数字 1 到 4 组成的字符串 $s$。 如果无法从字符串中选择某些元素并按原顺序写出一个 4 的倍数,则称该字符串是美丽的。例如,字符串 31、222、213 是美丽的,而字符串 143、3123、1322 则不是。空字符串被认为是美丽的。 你的任务是计算为了使字符串变得美丽,至少需要从字符串 $s$ 中删除多少个元素。

输入格式

第一行包含一个整数 $t$($1 \le t \le 10^4$)——测试用例的数量。 每个测试用例只有一行,包含一个字符串 $s$($1 \le |s| \le 3 \cdot 10^5$),由数字 1 到 4 组成。 输入的附加限制:所有测试用例的 $s$ 的长度之和不超过 $3 \cdot 10^5$。

输出格式

对于每个测试用例,输出一个整数——为了使字符串变得美丽,至少需要从字符串 $s$ 中删除的元素个数。

说明/提示

在第一个示例中,你必须删除整个字符串。 在第二个示例中,字符串已经是美丽的。 在第三个示例中,你可以删除第 1、3、4、6 个字符,得到字符串 213。 由 DeepSeek-V4 翻译