#P16494. [PM2355]康托集里的幸运数字
[PM2355]康托集里的幸运数字
背景
数学系学生小林最近迷上了分形。她在图书馆读到 19 世纪数学家格奥尔格·康托提出的一个著名构造:从区间 出发,反复挖去每一段区间的「正中间三分之一开区间」。
小林想在室友生日前做一个小程序,帮她快速判断一个 范围内的小数是在第几步被挖掉的;如果这个小数在前 步都没有被挖掉,她就认定它「非常可能是康托集里的幸运数字」,记为第 步。
题目描述
康托集的构造规则如下:
- 初始区间为 ;
- 第 步:去掉区间 的中间三分之一开区间,即 ;
- 第 步:对剩下的 个区间各自去掉中间三分之一开区间;
- 第 步:对剩下的 个区间各自去掉中间三分之一开区间。
康托集就是 中在上述所有步骤里都没有被去掉的部分。
现在给定一个 内的十进制小数 (以字符串形式给出,首位为 .,后面全是数字),输出 是在第几步被去掉的。如果 在前 步中均未被去掉,则输出 。
输入格式
一行一个字符串 ,表示一个小数。
- 字符串长度在 到 之间(含);
- 第一个字符为
.; - 其余字符均为
0到9的数字。
输出格式
输出一个整数:
- 若 在第 步被去掉(),输出 ;
- 若前 步均未去掉 ,输出 。
样例
样例 1
.200
2
样例 2
.975
0
样例 3
.8
2
数据范围
- 字符串长度 ;
- 的首字符为
.,其余字符均为数字; - 表示的数值在 内。