当前没有测试数据。
循环数
题目描述
Y 同学对一种被称为“循环数”的正整数非常感兴趣。
一个正整数 被称为“循环数”,当且仅当它同时满足以下所有条件:
- 的十进制表示中不包含数字 。
- 的十进制表示中没有任何两个相同的数字。
- 假设 有 位,其十进制表示从左到右依次为 。我们定义一个在数位下标集合 上的移动规则:若当前在第 位(数字为 ),则向右移动 步。若移动超出了最右端,则折返至最左端继续循环移动。即下一个位置的下标 的计算公式为:
- 从起点第 位开始,按照上述规则连续移动恰好 次。在此过程中,要求经过的 个位置互不相同(即每个数位必须恰好被访问一次),并且第 次移动后的位置必须重新回到起点第 位。
例如, 是一个循环数(此时 ):
- 第 步:从第 位(数字 )开始,移动 步,到达第 位(数字 );
- 第 步:从第 位(数字 )开始,移动 步,到达第 位(数字 );
- 第 步:从第 位(数字 )开始,移动 步,到达第 位(数字 );
- 第 步:从第 位(数字 )开始,移动 步,到达第 位(数字 );
- 第 步:从第 位(数字 )开始,移动 步,重新回到起点的第 位(数字 )。 该数每个位置恰好被访问一次,且最后回到了起点,同时不含 且无重复数字。
现在,给定一个正整数 ,请你编写程序帮助 Y 同学找出最小的、且严格大于 的循环数 。
输入格式
第一行包含一个正整数 。
输出格式
输出一行一个正整数,表示符合条件的最小循环数 。
样例
样例输入 #1
81361
样例输出 #1
81362
数据范围与约定
对于 的数据,保证 。
数据保证必定存在满足条件的 ,且 。因为答案可能会超出 32 位有符号整数的表示范围,请使用 64 位整数类型进行计算与输出。
| 子任务编号 | 分值 | 特殊性质 | |
|---|---|---|---|
| 1 | 40 | 无 | |
| 2 | 60 |
京公网安备11010802045784号