#summercspj263B. 三人组队

三人组队

【题目描述】

数学嘉年华的团队赛即将开始,高斯需要为到场的同学安排小队.为了配合一种可以不断“三等分”的赛制,每支小队的人数只能是 1,3,9,27,1,3,9,27,\ldots 中的一个.

高斯需要将 nn 名同学分成恰好 kk 个非空小队.每个小队的人数必须是 33 的非负整数次幂,也就是必须属于

1,3,9,27,1,3,9,27,\ldots

其中 1=301=3^0

不同小队的人数可以相同.每名同学必须恰好加入一个小队.

对于每组询问,请判断是否存在符合要求的分组方案.

【输入描述】

第一行输入一个整数 TT,表示询问组数.

接下来 TT 行,每行输入两个整数 n,kn,k,表示同学人数和要求的小队数量.

【输出描述】

对于每组询问输出一行:如果存在符合要求的分组方案,输出 Yes;否则输出 No

输出中的英文字母大小写必须与上述格式一致.


【样例 1】

【样例 1 输入】

6
10 2
10 4
10 5
9 1
9 2
9 9

【样例 1 输出】

Yes
Yes
No
Yes
No
Yes

【样例 1 解释】

  • n=10,k=2n=10,k=2 时,可以分成大小分别为 9911 的两个小队.
  • n=10,k=4n=10,k=4 时,可以分成大小分别为 3,3,3,13,3,3,1 的四个小队.
  • n=10,k=5n=10,k=5 时不存在符合要求的方案.
  • n=9,k=9n=9,k=9 时,可以分成九个大小均为 11 的小队.

【样例 2】

【样例 2 输入】

4
1 1
2 1
2 2
1000000000000000000 1000000000000000000

【样例 2 输出】

Yes
No
Yes
Yes

【样例 3】

见选手目录下的 Data/sample3.inData/sample3.ans

该样例满足子任务 11 的限制:T20T\le20n30n\le30


【样例 4】

见选手目录下的 Data/sample4.inData/sample4.ans

该样例满足子任务 22 的限制:T20T\le20n500n\le500


【样例 5】

见选手目录下的 Data/sample5.inData/sample5.ans

该样例满足子任务 33 的特殊性质:所有询问均有 k2k\le2


【样例 6】

见选手目录下的 Data/sample6.inData/sample6.ans

该样例满足子任务 44 的特殊性质:每组询问中的 nn 都是 33 的非负整数次幂.


【样例 7】

见选手目录下的 Data/sample7.inData/sample7.ans

该样例对应子任务 55,无特殊性质.

【数据规模与约定】

对于所有测试数据,保证:

  • 1T1051\le T\le10^5
  • 1kn10181\le k\le n\le10^{18}
子任务编号 分数 特殊性质
11 1010 T20T\le20n30n\le30
22 1515 T20T\le20n500n\le500
33 k2k\le2
44 2020 每组询问中的 nn 都是 33 的非负整数次幂
55 4040 无特殊性质

各子任务独立计分.只有通过一个子任务中的全部测试点,才能获得该子任务的分数.

【大样例下载链接】

点击下载本题选手目录