P16277 「MierOI R1」Past

题目描述

给定正整数 $n$,判断是否存在 **回文数$^{\bm{\dagger}}$** $a$ 和非负整数 $b$,使 $a+2^b=n$。 --- $\bm \dagger$ 称一个 **非负整数** 是回文数,当且仅当其从左往右读和从右往左读是一样的。

输入格式

**本题有多组测试数据。** 输入的第一行包含一个正整数 $T$,表示测试数据的组数。 接下来依次输入 $T$ 组测试数据。对于每组测试数据: - 一行,一个正整数 $n$。

输出格式

对于每组测试数据,输出一行: - 若存在满足条件的 $a,b$,输出 ``Yes``。 - 若不存在满足条件的 $a,b$,输出 ``No``。

说明/提示

#### 「样例 #1 解释」 对于第一组测试数据,有 $a=11$,$b=2$,$n=11+2^2=15$。 对于第二组测试数据,可以证明,不存在满足条件的 $a,b$。 对于第三组测试数据,有 $a=57\,675$,$b=9$,$n=57\,675+2^9=58\,187$。 #### 「数据范围」 **本题采用子任务捆绑测试。** 对于所有测试数据,保证 $1 \le T \le 10^4$,$1 \le n \le 10^{18}$。 ::cute-table{tuack} | 子任务 | $T \le$ | $n \le$ | 分值 | |:-:|:-:|:-:|:-:| | $1$ | $10$ | $10^3$ | $30$ | | $2$ | ^ | $10^6$ | $30$ | | $3$ | $10^4$ | $10^{18}$ | $40$ |