Johnny 是一个黑客,最近他得到了一个大型银行的数据库。当前最重要的任务是从中提取客户的 ID。这些 ID 已经排好序,并被拼接成了一个单一的数字序列,但没有拼接位置的标记;这些标记在另一个单独的文件中,而 Johnny 并没有这个文件。Johnny 想要恢复这些 ID,也就是说,计算将该序列切成若干碎片后,最多可以得到多少个 ID。Johnny 相信自己的运气:如果切分序列的方法有很多种,那么能够使 ID 数量最大化的那一种肯定就是正确的。
由于客户的 ID 是在不同阶段分配的,它们的长度可能不同,并且可能含有前导零。但 Johnny 知道,当把每个 ID 视为十进制表示的数时,每个 ID 都具有唯一的数值。
输入格式
输入的第一行,也是唯一的一行,包含一个由 $n$($1 \le n \le 10^6$)个十进制数字组成的序列。这些数字之间没有其他字符,特别地,没有空格。这就是 Johnny 拥有的 ID 序列。
输出格式
输出一个自然数,即该序列最多可以被切分出的客户 ID 数量。
样例
输入样例 1
10540910
输出样例 1
4
说明
对应于该答案的客户 ID 序列为:1,05,40,910。注意,ID 05 的数值为 $5$。