CF1674A.Number Transformation
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given two integers x and y . You want to choose two strictly positive (greater than zero) integers a and b , and then apply the following operation to x exactly a times: replace x with b⋅x .
You want to find two positive integers a and b such that x becomes equal to y after this process. If there are multiple possible pairs, you can choose any of them. If there is no such pair, report it.
For example:
- if x=3 and y=75 , you may choose a=2 and b=5 , so that x becomes equal to 3⋅5⋅5=75 ;
- if x=100 and y=100 , you may choose a=3 and b=1 , so that x becomes equal to 100⋅1⋅1⋅1=100 ;
- if x=42 and y=13 , there is no answer since you cannot decrease x with the given operations.
输入格式
The first line contains one integer t ( 1≤t≤104 ) — the number of test cases.
Each test case consists of one line containing two integers x and y ( 1≤x,y≤100 ).
输出格式
If it is possible to choose a pair of positive integers a and b so that x becomes y after the aforementioned process, print these two integers. The integers you print should be not less than 1 and not greater than 109 (it can be shown that if the answer exists, there is a pair of integers a and b meeting these constraints). If there are multiple such pairs, print any of them.
If it is impossible to choose a pair of integers a and b so that x becomes y , print the integer 0 twice.
输入输出样例
输入#1
3 3 75 100 100 42 13
输出#1
2 5 3 1 0 0