#3804. 破译密码

    ID: 3804 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>数学知识mobius函数莫比乌斯反演算法竞赛进阶指南

破译密码

题目描述

达达正在破解一段密码,他需要回答很多类似的问题:

对于给定的整数 a,ba,bdd,有多少正整数对 x,yx,y,满足xayb x≤a,y≤b,并且gcd(x,y)=d gcd(x,y)=d

作为达达的同学,达达希望得到你的帮助。

输入格式

第一行包含一个正整数 nn,表示一共有n n 组询问。

接下来 nn 行,每行表示一个询问,每行三个正整数,分别为a,b,d a,b,d

输出格式

对于每组询问,输出一个正整数,表示满足条件的整数对数。

样例

2
4 5 2
6 4 3
3
2

提示:gcd(x,y)gcd(x,y) 返回 xyx,y 的最大公约数。

数据范围

  • 1n500001≤n≤50000
  • 1da,b500001≤d≤a,b≤50000

来源

  • POI2007
  • BZOJ1101
  • 算法竞赛进阶指南