#JXGQ25002C. 强哥解密

强哥解密

题目描述

强哥在破解一个秘密组织的保险箱时,发现保险箱的密码与一类特殊的数字有关。这类数字的形式为 3m3^m(其中 mm 是非负整数)。

保险箱的密码验证规则是:给定两个整数 nnkk,需要判断是否能够使用恰好 kk 个这样的特殊数字相加,得到整数 nn

换句话说,是否存在一个非负整数序列 {ak}\{a_k\},使得:

n=3a1+3a2++3akn = 3^{a_1} + 3^{a_2} + \cdots + 3^{a_k}

强哥需要你的帮助来破解这些密码!

输入格式

输入的第一行包含一个正整数 TT,表示需要破解的密码个数。

接下来 TT 行,每行两个整数 n,kn, k,表示一个密码验证条件。

输出格式

输出共 TT 行。对于每一个密码验证条件,如果可以满足则输出 Yes,否则输出 No

输入样例

4
5 3
17 2
163 79
1000000000000000000 1000000000000000000

输出样例

Yes
No
Yes
Yes

样例解释

  • 第一个密码:5=31+30+305 = 3^1 + 3^0 + 3^0,满足条件。
  • 第二个密码:不存在非负整数序列 a1,a2a_1, a_2 使得 17=3a1+3a217 = 3^{a_1} + 3^{a_2},不满足条件。

数据规模与约定

  • 对于 30%30\% 的数据,保证 n10,k5n \le 10, k \le 5
  • 对于另 30%30\% 的数据,保证 n1000,k2n \le 1000, k \le 2
  • 对于 100%100\% 的数据,保证 $1 \le k \le n \le 1 \times 10^{9}, 1 \le T \le 1 \times 10^5$。