3032. 是坚挺数吗?

单点时限: 2.0 sec

内存限制: 256 MB

考虑如下自然数序列:

1  2  3  4  5  6  7  8  9  10  11  12 ...

隔一个数划去一个数,形成如下序列:

1  3  5  7  9  11  13  15  17 ...

再隔两个数划去一个数,形成新的序列:

1  3  7  9  13  15  19  21 ...

再隔三个数划去一个数,形成新的序列:

1  3  7  13  15  19  25  27 ...

这个过程无限地进行下去。无限次地进行后,依然未被划去的数被称为 坚挺数

编写程序:判断一个给定的整数,是否是坚挺数。

输入格式

第 $1$ 行:一个整数 $T$ ($1 \le T \le 10$) 为问题数。

接下来共 $T$ 行整数,每行输入一个正整数 $N (1≤N≤10000)$。

输出格式

对于每个问题,输出一行问题的编号($0$ 开始编号,格式:case #0: 等)。

然后对应每个问题在一行中输出整数 $N$ 是否为坚挺数(Yes或者 No)。若为 Yes,则输出该整数在所有坚挺数中的位次(按从小到大的顺序排列)。注意:中间要输出一个空格。

样例

Input
3
19
148
4783
Output
case #0:
Yes 5
case #1:
No
case #2:
Yes 78

364 人解决,404 人已尝试。

508 份提交通过,共有 886 份提交。

1.3 EMB 奖励。

创建: 10 年,6 月前.

修改: 6 年,3 月前.

最后提交: 5 月,2 周前.

来源: 2014年编程实践课程第三次上机考试

题目标签