CF BUDDY
← Problems·

1796C · Maximum Set

1600 · binary search, math

Problem: A set of positive integers SS is called beautiful if, for every two integers xx and yy from this set, either xx divides yy or yy divides xx (or both).

You are given two integers ll and rr. Consider all beautiful sets consisting of integers not less than ll and not greater than rr. You have to print two numbers:

  • the maximum possible size of a beautiful set where all elements are from ll to rr;
  • the number of beautiful sets consisting of integers from ll to rr with the maximum possible size.

Since the second number can be very large, print it modulo 998244353998244353.

Input Format: The first line contains one integer tt (1t21041 \le t \le 2 \cdot 10^4) — the number of test cases.

Each test case consists of one line containing two integers ll and rr (1lr1061 \le l \le r \le 10^6).

Output Format: For each test case, print two integers — the maximum possible size of a beautiful set consisting of integers from ll to rr, and the number of such sets with maximum possible size. Since the second number can be very large, print it modulo 998244353998244353.

Note: In the first test case, the maximum possible size of a beautiful set with integers from 33 to 1111 is 22. There are 44 such sets which have the maximum possible size:

  • {3,6}\{ 3, 6 \};
  • {3,9}\{ 3, 9 \};
  • {4,8}\{ 4, 8 \};
  • {5,10}\{ 5, 10 \}.

Sample Cases

Case 1

Input

4
3 11
13 37
1 22
4 100

Output

2 4
2 6
5 1
5 7

Similar problems

00:00:00
Loading editor…
Welcome! I'm your coding tutor for this problem. Use the chips below to reveal stored hints or get AI feedback on your code. I'll guide you step by step — never giving away the solution.

Sign in to unlock AI tutor feedback