首页 > 试题广场 >

循环数

[编程题]循环数
  • 热度指数:806 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
142857是一个六位数,我们发现:
142857 * 1 = 142857
142857 * 2 = 285714
142857 * 3 = 428571
142857 * 4 = 571428
142857 * 5 = 714285
142857 * 6 = 857142
即用1到6的整数去乘142857,会得到一个将原来的数首尾相接循环移动若干数字再在某处断开而得到的数字。
也就是说,如果把原来的数字和新的数字都首尾相接,他们得到的环是相同的。只是两个数的起始数字不一定相同。
请写一个程序,判断给定的数不是循环数。

输入描述:
输入包括多组数据。

每组数据包含一个正整数n,n是2到60位的正整数,并且允许前缀0。即001也是合法的输入数据。


输出描述:
对应每一组数据,如果是循环数,则输出“Yes”;否则,输出“No”。
示例1

输入

142857
012345

输出

Yes
No

这道题你会答吗?花几分钟告诉大家答案吧!