#HX1256E. 从1到n

提交0 通过0
通过率0%
时间限制1000ms
内存限制128MiB
    ID: 10086 传统题 1000ms 128MiB 尝试: 0 已通过: 0 难度: 普及- 上传者: 标签>编程题C++CSPCSP复赛CSP复赛专项练习暑假CSP复赛集训暑假集训1256-OI赛制模拟考上下

题目描述

题目描述

有一个变量x,初始变量x的值为1。你可以对这个变量进行如下操作:

选择一个大于等于2的整数k,花费k元,将变量x的值变成kx。

你的目标是把x的值变成n,你手上只有m元,问能否达成目标?题目包含多组数据。

输入格式

第1行,1个正整数T

第2∼T+1行,每行2个正整数N,M

前30%数据:n1000n\le 1000

前60%数据:n3×105n\le 3\times 10^{5}

对100%数据:1T101\le T\le 102n1092\le n\le 10^{9}1m10181\le m\le 10^{18}

输出格式

输出T行,对每组数据用一行输出答案。如果能达成目标输出 Yes,不能达成输出 No。

样例输入

1
12 10

样例输出

Yes

提示

样例1说明:

第一次操作选取k=3k=3,花费3元,x变成3。

第二次操作选取k=4k=4,花费4元,x变成12

前30%数据:n1000n\le 1000

前60%数据:n3×105n\le 3\times 10^{5}

对100%数据:1T101\le T\le 102n1092\le n\le 10^{9}1m10181\le m\le 10^{18}

1
2 2
Yes
1
3 9
Yes
1
5 9
Yes