AT_past19_c 良さそうな数
Description
**良い数** を次のように定義します。
- 正整数 $ x $ が以下の条件を満たすとき、またその時に限って $ x $ を **良い数** と呼びます。
- $ x $ の隣接する桁の差は高々 $ 1 $ である。
- 厳密には、 $ x $ が $ k $ 桁の整数であり、 $ x $ を十進表記で書き下すと $ d_1d_2 \dots d_k $ となる時、 $ 1 \le i < k $ なる全ての整数 $ i $ について $ |d_i - d_{i+1}| \le 1 $ が満たされる。
例えば $ 1,56,777,3234 $ は良い数ですが、 $ 13,1235,909 $ は良い数ではありません。
**良さそうな数** を次のように定義します。
- 正整数 $ x $ が以下の条件を満たすとき、またその時に限って $ x $ を **良さそうな数** と呼びます。
- $ x $ の桁を高々 $ 1 $ つ書き換えることで、 $ x $ を良い数にすることができる。 但し、この書き換えで先頭の桁を $ 0 $ にすることは許されない。
- 厳密には、 $ x $ が $ k $ 桁の整数であり、 $ x $ を十進表記で書き下すと $ d_1d_2 \dots d_k $ となる時、以下の条件を全て満たす整数組 $ (p,q) $ が存在する。
- $ 1 \le p \le k $
- $ 0 \le q \le 9 $
- $ (p,q) \neq (1,0) $
- $ x $ のうち $ d_p $ を $ q $ にすると、 $ x $ が良い数となる。
- 良い数は、必ず良さそうな数でもあることに注意してください。
例えば $ 7176 $ は $ d_2 $ を $ 8 $ にすることで $ 7876 $ とでき、 $ 7876 $ は良い数なので $ 7176 $ は良さそうな数です。
整数 $ N $ が与えられるので、 $ N $ が良さそうな数かどうか判定してください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $
Output Format
$ N $ が良さそうな数なら `Yes` 、そうでないなら `No` と出力せよ。
Explanation/Hint
### Sample Explanation 1
問題文中の例と同じです。
### Sample Explanation 2
$ 2020 $ は良さそうな数ではありません。
### Sample Explanation 4
$ N $ が $ 32 $ bit 符号付き整数に収まらない場合もあります。
また、 $ N $ 自身が良い数である場合もあります。
### Constraints
- $ N $ は $ 1 \le N < 10^{18} $ を満たす整数