002 - サバを読む
時間制限 1 秒 / メモリ制限 256 MB / 得点 3 / x 5 /
問題
キヨシさんはネットでn進法に関する記事を読んだ。そこには以下のように書かれていた。 我々は数値を表現する際に、10進位(くらい)取り記数法を使用している。10進位(くらい)取り記数法は10進法とも呼び、この表現で示された数値を10進数と呼ぶ。10進法は以下のルールで数値を数字の列で表現する。
- 0,1,2,3,4,5,6,7,8,9の10種類の数字を使う。
- 数字をいくつか並べて列を作る。数字の位置を桁と呼び、いちばん右の数字を1桁目とする。
- $i$桁目の数字に$10^{i-1}$を掛けた数値をもとめ、それらをすべて足したものが、その数字の列が示す数値となる。ただし、$10^0=1$とする。
同様に、$n$進法 ($n \geq 2$, $n$は整数)は、以下のルールで数値を数字の列で表現する。
- 0から$n-1$までの数字を使う。ただし、$n$が10より大きいときは、10以上の数字を表すときに文字を使う。たとえば、$n$が16までのときは数が小さい方から順番に、0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, Fを使うことが多い。A=10, B=11, …, F=15を示す。
- 数字をいくつか並べて列を作る。数字の位置を桁と呼び、いちばん右の数字を1桁目とする。
- $i$桁目の数字に$n^{i-1}$を掛けた数値をもとめ、それらをすべて足したものが、その数字の列が示す数値となる。ただし、$n^0=1$とする。
$n$進法について学習したキヨシさんは、10進数$X$を$n$進数($n \ne 10$)として読み取ると、$X$より小さな数として読み取れる場合があることに気付いた。さらに10進数を$n$進数($n \ne 10$)として読み取ることができるような$n$とできない$n$があることに気付いた。たとえば、10進数237は8進数として読み取ることができるが、7進数として読み取ることはできない。 キヨシさんは自分の年齢$X$を10進法で表した数字の列を、$n \ne 10$を満たす$n$進数として読み取ることで、自分が$X$歳より若いと言い張れるかどうかを考えることにした。
キヨシさんの年齢$X$が10進数で与えられる。これを10進数以外の数として読み取ったときに、$X$未満の数として読み取れるかどうかを判定するプログラムを作成せよ。
入力
入力は以下の形式で与えられる。
$X$
1行目にキヨシさんの年齢$X$($1 \leq X \leq 1,000,000,000=10^9$)が10進数で与えられる。
出力
キヨシさんの年齢$X$を10進数以外の数として読み取ったときに、$X$未満の数として読み取れる場合は「 Yes 」、そうでないならば「 No 」を出力せよ。
入出力例
入力例1
30029
出力例1
No
入力例2
8264
出力例2
Yes
入力例3
5
出力例3
No