CF1455A.Strange Functions
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Let's define a function f(x) ( x is a positive integer) as follows: write all digits of the decimal representation of x backwards, then get rid of the leading zeroes. For example, f(321)=123 , f(120)=21 , f(1000000)=1 , f(111)=111 .
Let's define another function g(x)=f(f(x))x ( x is a positive integer as well).
Your task is the following: for the given positive integer n , calculate the number of different values of g(x) among all numbers x such that 1≤x≤n .
输入格式
The first line contains one integer t ( 1≤t≤100 ) — the number of test cases.
Each test case consists of one line containing one integer n ( 1≤n<10100 ). This integer is given without leading zeroes.
输出格式
For each test case, print one integer — the number of different values of the function g(x) , if x can be any integer from [1,n] .
输入输出样例
输入#1
5 4 37 998244353 1000000007 12345678901337426966631415
输出#1
1 2 9 10 26
说明/提示
Explanations for the two first test cases of the example:
- if n=4 , then for every integer x such that 1≤x≤n , f(f(x))x=1 ;
- if n=37 , then for some integers x such that 1≤x≤n , f(f(x))x=1 (for example, if x=23 , f(f(x))=23 , f(f(x))x=1 ); and for other values of x , f(f(x))x=10 (for example, if x=30 , f(f(x))=3 , f(f(x))x=10 ). So, there are two different values of g(x) .