#L0026. 删数字

删数字

题目描述

小杨有一个正整数 NN(不含前导零)。

他想删除 NN 的若干位数字(至少要保留一位),使剩下的数字按原来的顺序组成的新整数能被 33 整除(允许出现前导零,例如剩下 0012 表示整数 1212)。

请你帮小杨计算:最少需要删除多少位数字?如果无论怎样删除都不能满足要求,输出 1-1

输入格式

输入共一行,包含一个正整数 NN

输出格式

输出一个整数,表示最少需要删除的位数;若无法满足要求,输出 1-1

样例

35
1
123
0
2002
2
41
-1

样例解释

样例 1 中,删除数字 55,剩下 33,能被 33 整除;删除 33 剩下的 55 不行,所以最少删 11 位。

样例 2 中,123123 本身各位之和为 1+2+3=61+2+3=6,能被 33 整除,无需删除。

样例 3 中,删除两个 22,剩下 00 即整数 00,能被 33 整除;只删 11 位无法满足(002002202202200200 各位之和分别为 224422,均不是 33 的倍数),所以最少删 22 位。

样例 4 中,4141 删除任意一位得到 4411,都不能被 33 整除;两位都删则没有数字留下,所以无解,输出 1-1

数据范围与约定

子任务 分值 限制
11 77 N999N \leq 999
22 88 保证最少删除不超过 11
33 1010 无特殊限制

对于 100%100\% 的数据,保证 NN 的位数不超过 10510^5NN 不含前导零(N1N \geq 1)。