#P1052. 被遗忘的图案密码

被遗忘的图案密码

被遗忘的图案密码

题目描述

在 星火科技大学 的信息安全实验室里,研究员 vvb 是传说中“代码写得飞快、Bug改得更快”的传奇程序员。 但让同学们最震惊的并不是他写代码的速度,而是 ——

他竟然有女朋友! 她的名字叫 QAQ。

某天,QAQ 拿着 vvb 的老旧手机,小米 5s,气呼呼地问:

“你以前的图案解锁密码到底是什么?”

vvb 挠了挠头:

“呃……我……好像忘了……都是用指纹的嘛……”

QAQ(黑脸): “???”

vvb 把自己印象中“可能用过”的所有解锁图案都写给了 QAQ。 但 QAQ 当然知道这个家伙不可能老老实实,里面肯定塞了一堆 根本不符合安卓图案规则的伪造密码。

于是她委托你:

请你判断每一串数字是否是合法的安卓图案解锁轨迹。

安卓图案解锁规则如下: 1

  1. 每个点 (1~9) 最多只能使用一次。

  2. 对于任意一步,如果你从 A 点滑到 B 点,但两者连线的中点是另一个点 C:

    • 当且仅当 C 已经被使用过,才能直接连过去。

    • 例:1 → 9

      • 合法情况是:

        • 1→5→9
        • 或 5 已经在更早的步骤使用过

给定 vvb 提供的所有“可能密码”,你的任务是判断它们是否合法。

输入格式

多组输入,读到文件末尾(EOF)为止。 每组输入占一行,包含一串数字(1~9),长度在 1 到 30 之间(本题只要求满足上述两条规则,不要求至少 4 个点)。

输出格式

对于每组输入,输出一行:若合法输出 YES,否则输出 NO。

样例 1

14569
1953
15963
15953
YES
NO
YES
NO