돌아가는 반올림
시간 제한2초메모리 제한2048 MB
2 이상 N 이하의 정수 x를 10^P 자리로 한 번에 반올림한 결과와 작은 자리부터 차례로 반올림한 결과가 다른 개수를 구합니다.
문제
베시 소는 다시 학교에 다니게 되었다. 그녀는 양의 정수를 의 거듭제곱 단위로 반올림하는 수학 숙제를 하고 있다.
양의 정수 를 최근접 로 반올림할 때 (는 양의 정수), 베시는 먼저 오른쪽에서 번째 자릿수를 찾는다. 이 자릿수를 라고 한다.
이면 베시는 에 를 더한다.
그다음 오른쪽에서 번째 자릿수와 그보다 오른쪽에 있는 모든 자릿수를 으로 바꾼다.
예를 들어 을 최근접 (백의 자리)로 반올림해 보자. 오른쪽에서 두 번째 자릿수는 이므로 이다. 이므로 에 을 더한다. 그다음 두 번째 자릿수와 그 오른쪽 자릿수를 모두 으로 바꾸면 이 된다.
반면 을 최근접 로 반올림하면 이 된다.
엘시는 연쇄 반올림이라는 새로운 방식을 생각해 냈다고 여긴다. 로 연쇄 반올림하려면 엘시는 먼저 로 반올림하고, 다음으로 로 반올림하며, 이런 식으로 까지 반올림한다.
베시는 엘시가 틀렸다고 생각하지만, 숙제를 하느라 바빠서 확인하지 못했다. 그래서 당신은 이상 이하인 정수 중에서, 를 만족하는 가장 작은 정수 에 대해 를 로 반올림한 값과 연쇄 반올림한 값이 다른 의 개수를 세어야 한다. 단, 이다.
입력
첫 줄에 테스트 케이스의 개수 ()가 주어진다. 이어서 개의 줄에 각각 정수 이 하나씩 주어진다. 같은 입력 파일 안의 모든 은 서로 다르다.
출력
개의 줄을 출력한다. 번째 줄에는 번째 테스트 케이스에 대해, 이상 이하인 정수 중 두 반올림 방식의 결과가 다른 정수의 개수를 출력한다.
힌트
두 번째 테스트 케이스를 보자. 은 연쇄 반올림하면 이 된다(). 그러나 을 로 반올림하면 이 되므로 은 센다.
세 번째 테스트 케이스에서 세는 정수는 과 이다. 은 이 아니라 으로 연쇄 반올림되고, 은 이 아니라 으로 연쇄 반올림된다. 반면 은 으로 연쇄 반올림되는데, 을 로 반올림한 값도 이므로 세지 않는다.