COMDIV - Number of common divisors

You will be given T (T ≤ 106) pairs of numbers. All you have to tell is the number of common divisors between the two numbers in each pair.

Input

First line of input: T (Number of test cases)
In next T lines, each have one pair A B (0 < A, B ≤ 106)

Output

One integer describing number of common divisors between two numbers.

Example

Input:
3
100000 100000
12 24
747794 238336 Output: 36
6
2

Added by:Mir Wasi Ahmed
Date:2010-10-31
Time limit:0.600s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64
Resource:Own problem, used in UODA TST

hide comments
2011-06-27 16:46:07 :(){ :|: & };:
Nice test cases, I got few WA since I was too lame to check for integer overflows ;-)
2011-06-27 16:46:07 numerix
Problem is easy to solve, but very I/O related. Absolutely impossible with Python (6 s are not enough for I/O without any calculation!) and even a Pascal solution has to be well optimized to get AC.
2011-06-27 16:46:07 Mir Wasi Ahmed
@A. Muh. Primabudi: Sorry, At first I uploaded a test data different from the original one by mistake. Now I replaced the data and re-judged every solution. Sorry for the inconvenience.
2011-06-27 16:46:07 A. Muh. Primabudi
what the hell? i getting AC last morning,
but now my accepted program is TLE.

2011-06-27 16:46:07 The Champ
got AC :)

Last edit: 2010-11-01 16:07:33
2011-06-27 16:46:07 well i am lagging
this problem is not clear as lower limit of the numbers is not given?

Edit: Fixed

Last edit: 2010-11-01 17:35:53
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.