题库练习 Basis
← 上一题 下一题 →

A14939 | Basis

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

For an array of integers $a$ , let's define $|a|$ as the number of elements in it.

Let's denote two functions:

- $F(a, k)$ is a function that takes an array of integers $a$ and a positive integer $k$ . The result of this function is the array containing $|a|$ first elements of the array that you get by replacing each element of $a$ with exactly $k$ copies of that element.For example, $F([2, 2, 1, 3, 5, 6, 8], 2)$ is calculated as follows: first, you replace each element of the array with $2$ copies of it, so you obtain $[2, 2, 2, 2, 1, 1, 3, 3, 5, 5, 6, 6, 8, 8]$ . Then, you take the first $7$ elements of the array you obtained, so the result of the function is $[2, 2, 2, 2, 1, 1, 3]$ .
- $G(a, x, y)$ is a function that takes an array of integers $a$ and two different integers $x$ and $y$ . The result of this function is the array $a$ with every element equal to $x$ replaced by $y$ , and every element equal to $y$ replaced by $x$ .For example, $G([1, 1, 2, 3, 5], 3, 1) = [3, 3, 2, 1, 5]$ .

An array $a$ is a parent of the array $b$ if:

- either there exists a positive integer $k$ such that $F(a, k) = b$ ;
- or there exist two different integers $x$ and $y$ such that $G(a, x, y) = b$ .

An array $a$ is an ancestor of the array $b$ if there exists a finite sequence of arrays $c_0, c_1, \dots, c_m$ ( $m \ge 0$ ) such that $c_0$ is $a$ , $c_m$ is $b$ , and for every $i \in [1, m]$ , $c_{i-1}$ is a parent of $c_i$ .

And now, the problem itself.

You are given two integers $n$ and $k$ . Your goal is to construct a sequence of arrays $s_1, s_2, \dots, s_m$ in such a way that:

- every array $s_i$ contains exactly $n$ elements, and all elements are integers from $1$ to $k$ ;
- for every array $a$ consisting of exactly $n$ integers from $1$ to $k$ , the sequence contains at least one array $s_i$ such that $s_i$ is an ancestor of $a$ .

Print the minimum number of arrays in such sequence.

输入格式

The only line contains two integers $n$ and $k$ ( $1 \le n, k \le 2 \cdot 10^5$ ).

输出格式

Print one integer — the minimum number of elements in a sequence of arrays meeting the constraints. Since the answer can be large, output it modulo $998244353$ .

输入输出样例

输入 #1
3 2
输出 #1
2
输入 #2
4 10
输出 #2
12
输入 #3
13 37
输出 #3
27643508
输入 #4
1337 42
输出 #4
211887828
输入 #5
198756 123456
输出 #5
159489391
输入 #6
123456 198756
输出 #6
460526614
C++ 编辑器
输入
输出