#P13729. 【MGVOI R1-A】超级奇数(odd)
【MGVOI R1-A】超级奇数(odd)
题目背景
如果这是您首次参加 OI 赛制的比赛,以下提示可能会有所帮助:
::::warning[提示]{open}
-
本场比赛为 OI 赛制,和 CSP-J/S 相同。也就是说,你在比赛期间无法看到评测结果,且每道题的分数均以最后一次提交为准。
-
所有题目都在附件中附有大样例。建议使用文件读写函数(如
freopen
)进行样例测试,但 比赛界面提交的代码中 请勿调用 文件读写函数,从而确保你的代码能被正常评测。
::::
题目描述
Fruit 同学和 Siby 同学很喜欢超级奇数。
::::info[超级奇数的定义]{open} 对于一个正整数,如果其十进制表示中的每一位都是奇数(即仅由 中的某些数码组成),则定义它是一个 超级奇数。例如, 等都是超级奇数,而 等则不是。 ::::
有一天,他们在放学的路上想到了这样一个问题:“给定一个正整数 ,如何为它找到一个最小的 非负整数 ,使得 为一个超级奇数?”
两位同学很快就想到了解法,但他们没学过编程,所以在处理大量的数据时有些力不从心。因此,他们找到了学习算法竞赛的你,希望你能用计算机快速地解答这个问题。
输入格式
每个测试点包含多组测试数据,各组测试数据之间相互独立。
第一行包含一个正整数 ,表示测试数据的组数。
对于每组测试数据:仅输入一行,包含一个正整数 。
输出格式
对于每组测试数据:仅需在单独一行输出一个非负整数,表示 的最小值。
3
7
16
23
0
1
8
8
2
82
128
136
13365
139454
310111
975319
1
9
3
1
6
57
1000
0
提示
【样例 #1】
::::info[样例 #1 解释]
对于第一组测试数据:
-
显然, 本身就是一个超级奇数,所以当 时,只需取 就能使得 为超级奇数。
-
综上, 的最小值为 。
对于第二组测试数据:
-
当 时,,含有偶数数码 ,不是超级奇数;
-
当 时,,仅含有奇数数码,是超级奇数。
-
综上, 的最小值为 。
对于第三组测试数据:
-
当 时,,含有偶数数码 ,不是超级奇数;
-
当 时,,含有偶数数码 ,不是超级奇数;
-
当 时,,含有偶数数码 ,不是超级奇数;
-
以此类推,当 时,验证知 均不是超级奇数;
-
当 时,,仅含有奇数数码,是超级奇数。
-
综上, 的最小值为 。
::::
【样例 #3】
见附件中的 odd/odd3.in
与 odd/odd3.ans
。
这个样例满足测试点 的限制。
【样例 #4】
见附件中的 odd/odd4.in
与 odd/odd4.ans
。
这个样例满足测试点 的限制。
【样例 #5】
见附件中的 odd/odd5.in
与 odd/odd5.ans
。
这个样例满足测试点 的限制。
【数据范围】
对于所有测试点,保证 ,。
::cute-table{tuack}
测试点编号 | 特殊性质 | ||
---|---|---|---|
无 | |||
^ | |||
A | |||
^ | 无 |
特殊性质 A:保证在 的十进制表示中,有且仅有一位是偶数(如 , 等,其中标蓝的为偶数数码)。
-
分值分配:每个测试点的分值为 分。
-
提示:本场比赛四道题目的测试点中 存在行末回车符和文末换行,因此,建议使用特殊读入方式(如“快读”)的选手自行通过各题附件中的大样例进行测试,以确保程序的输入部分能够正常工作。