100 #3540. 【国庆集训 Day1D】二元组

【国庆集训 Day1D】二元组

题目描述

4s,512M,pair.in,pair.out

你需要回答 TT 次询问。

每次询问,给定 a,b,c,da,b,c,d 。你需要回答满足条件的二元组 (i,j)(i,j) 个数。

  • a≤i≤ba\le i\le b 。
  • c≤j≤dc\le j\le d 。
  • lcm(i,j)\text{lcm}(i,j) 是 MC 数。

其中 MC 数的定义是:如果给定数能表示为 xyx^y,x,yx,y 为正整数,且 y>1y>1 , 则这个数是 MC 数,否则这个数不是 MC 数。

输入格式

第一行一个数 TT 表示询问组数

接下来 TT 行每行四个正整数 a,b,c,da,b,c,d 表示一次询问。

输出格式

输出 TT 行。每行一个数。第 ii 表示对于第 ii 次询问的答案。

样例 #1

样例输入 #1

3
1 2 1 2
1 5 1 5
1 10 1 10

样例输出 #1

1
6
20

提示

子任务编号 b,db,d TT 特殊性质 分值
11 ≤100\le 100 1010
22 ≤103\le 10^3 1515
33 ≤105\le 10^5 ≤10\le 10 a=b=1a=b=1
44 ≤106\le 10^6 =1=1 a=c=1a=c=1 2020
55 4040

对于 100%100\% 的数据,1≤a≤b≤1061\le a\le b\le 10^6,1≤c≤d≤1061\le c\le d\le 10^6,T≤106T\le 10^6 。