#P13185. [GCJ 2016 Qualification] Counting Sheep

[GCJ 2016 Qualification] Counting Sheep

Description

Bleatrix Trotter 这只羊发明了一种能帮助她更快入睡的方法。首先,她会选取一个数字 N\mathrm{N}。然后,她依次念出 N\mathrm{N}2×N2 \times \mathrm{N}3×N3 \times \mathrm{N},以此类推。每当她念出一个数字时,她会思考这个数字中所有出现过的数字。她会记录下自己已经见过哪些数字(0,1,2,3,4,5,6,7,8,90,1,2,3,4,5,6,7,8,9),无论这些数字在她念出的哪一个数字中出现过。只要她已经见到过全部十个数字中的每一个至少一次,她就会入睡。

Bleatrix 必须从 N\mathrm{N} 开始,并且每次都要在念完 i×Ni \times \mathrm{N} 后,直接念 (i+1)×N(i+1) \times \mathrm{N}。例如,假设 Bleatrix 选择了 N=1692\mathrm{N} = 1692,她的计数过程如下:

  • N=1692\mathrm{N} = 1692。现在她已经见过数字 1,2,61,2,699
  • 2N=33842 \mathrm{N} = 3384。现在她已经见过数字 1,2,3,4,6,81,2,3,4,6,899
  • 3N=50763 \mathrm{N} = 5076。现在她已经见过全部十个数字,于是她入睡。

她在入睡前最后念出的数字是多少?如果她会永远数下去,请输出 INSOMNIA

Input Format

输入的第一行包含测试用例数量 T\mathrm{T}。接下来有 T\mathrm{T} 组测试用例,每组测试用例包含一行,一个整数 N\mathrm{N},即 Bleatrix 选择的数字。

Output Format

对于每组测试用例,输出一行 Case #x: y,其中 xx 表示测试用例编号(从 1 开始),yy 是按照题目描述 Bleatrix 入睡前最后念出的数字。

5
0
1
2
11
1692
Case #1: INSOMNIA
Case #2: 10
Case #3: 90
Case #4: 110
Case #5: 5076

Hint

样例解释

在第 1 组中,由于 2×0=0,3×0=02 \times 0 = 0, 3 \times 0 = 0,以此类推,Bleatrix 除了 00 以外永远不会见到其他数字,因此她会永远数下去,无法入睡。可怜的羊!

在第 2 组中,Bleatrix 会依次念出 1,2,3,4,5,6,7,8,9,101,2,3,4,5,6,7,8,9,1000 是最后一个被见到的数字,因此她会在 1010 之后入睡。

在第 3 组中,Bleatrix 会念出 2,4,6,2,4,6,\ldots 等等。在 9090 之前,她都不会见到数字 99,直到 9090 时才会见到,从而入睡。在此之前,她已经分别在 10,10,2,30,4,50,6,70,810,10,2,30,4,50,6,70,8 这些数字中首次见到 0,1,2,3,4,5,6,7,80,1,2,3,4,5,6,7,8

在第 4 组中,Bleatrix 会依次念出 11,22,33,44,55,66,77,88,99,11011,22,33,44,55,66,77,88,99,110,然后入睡。

第 5 组就是题面描述中的例子。注意,这一组只会出现在大数据集,而不会出现在小数据集中。

限制条件

  • 1T1001 \leqslant \mathrm{T} \leqslant 100

小数据集(7 分,测试集 1 - 可见)

  • 0N2000 \leqslant \mathrm{N} \leqslant 200

大数据集(8 分,测试集 2 - 隐藏)

  • 0N1060 \leqslant \mathrm{N} \leqslant 10^{6}

翻译由 GPT4.1 完成。