#P05018. 数的位数

数的位数

题目描述

计算多组非负数的位数。对于每一个非负数,可能是整数,也可能是小数(保证数的位数不超过 10001000)。处理方法如下:

  • 如果是整数,首先输出 int,然后输出整数的位数;
  • 如果是小数,首先输出 float,然后依次输出这个小数整数部分的位数和小数部分的位数。

需要特别注意的是,数的高位可能有多余的 00,这些高位多余的 00 不计入位数。

输入格式

11 行是一个正整数 NN,表示要处理的数的个数。

然后有 NN 行输入,每行是一个非负数(可能是整数,也可能是小数,保证数的位数不超过 10001000)。

注意:

  • 输入的数字整数部分高位可能会出现多余的 00
  • 输入时,如果整数部分为 00,可以省略(此时整数部分如何计算位数请分析样例);
  • 小数末尾的 00 要计入小数位数。

输出格式

NN 行,每行是对应输入数的处理结果。每行的多个数据用一个空格隔开。

输入输出样例

3
0
000123
123.456
int 1
int 3
float 3 3
3
000000000.123456
.123456
123.4560
float 1 6
float 1 6
float 3 4

说明/提示

👀️ 对于100%100\%的数据,N1000N \leq 1000