比赛场次 124
比赛名称 20120323
比赛状态 已结束比赛成绩
开始时间 2012-03-23 19:00:00
结束时间 2012-03-23 22:00:00
开放分组 全部用户
注释介绍
题目名称 最大公约数
输入输出 gcd.in/out
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试点数 10 简单对比
用户 结果 时间 内存 得分
Gravatar恢复用户698 AAAAAAAAAA 0.000 s 0.00 MiB 100
GravatarTBK ATTAAAATTT 0.000 s 0.00 MiB 50
GravatarYeehok ATTTTTTTTT 0.000 s 0.00 MiB 10
GravatarMakazeu ATTTTTTTTT 0.000 s 0.00 MiB 10
Gravatar苏轼 ATTTTTTTTT 0.000 s 0.00 MiB 10
Gravatar11111111 ATTTTTTTTT 0.000 s 0.00 MiB 10
Gravatar恢复用户700 WTTTTTTTTT 0.000 s 0.00 MiB 0

最大公约数

★★★   输入文件:gcd.in   输出文件:gcd.out   简单对比
时间限制:1 s   内存限制:128 MiB

【问题描述

两个正整数 a 和 b 的最大公约数 $\gcd{(a,b)}$ ,有时记为$(a,b)$,是对于 a 、 b 来说最大的共同约数,举例来说,$( 1 , 2 ) =1 ,( 12 , 18 ) =6 $。
利用欧几里得算法很容易求出$( a,b )$,现在 Carp 正在思考一个更复杂的问题:
给定整数 N 和 M ,到底存在多少个 $X$ ,使得其满足条件: $1 ≤ X ≤ N 并且 (X,N) ≥ M$ 。

 
【输入格式】
输入文件第一行有一个整数 T ( T ≤ 3000 ),表示测试数据的个数,接下来有 T 行,每行包含两个数 N 和 M ,$1 ≤ N ≤ 1000000000 , 0 ≤ M ≤ 1000000000 $,表示一组测试数据。
【输出格式】
对于每组测试数据,输出一个结果,每个结果占一行。
【输入样例】
gcd.in
3
1 1
10 2
10000 72
gcd.out
1
6
260