A6632. 「春季测试 2023」幂次
编程题
普及+/提高
知识点
题目描述
小 Ω 在小学数学课上学到了「幂次」的概念:$\forall a, b \in \mathbb{N}^+$,定义 $a^b$ 为 $b$ 个 $a$ 相乘。
她很好奇有多少正整数可以被表示为上述 $a^b$ 的形式?由于所有正整数 $m \in \mathbb{N}^+$ 总是可以被表示为 $m^1$ 的形式,因此她要求上述的表示中,必须有 $b \geq k$,其中 $k$ 是她事先选取好的一个正整数。
因此她想知道在 $1$ 到 $n$ 中,有多少正整数 $x$ 可以被表示为 $x = a^b$ 的形式,其中 $a, b$ 都是正整数,且 $b \geq k$?
她很好奇有多少正整数可以被表示为上述 $a^b$ 的形式?由于所有正整数 $m \in \mathbb{N}^+$ 总是可以被表示为 $m^1$ 的形式,因此她要求上述的表示中,必须有 $b \geq k$,其中 $k$ 是她事先选取好的一个正整数。
因此她想知道在 $1$ 到 $n$ 中,有多少正整数 $x$ 可以被表示为 $x = a^b$ 的形式,其中 $a, b$ 都是正整数,且 $b \geq k$?
输入格式
第一行包含两个正整数 $n, k$,意义如上所述。
输出格式
输出一行包含一个非负整数表示对应的答案。
输入输出样例
输入 #1
99 1
输出 #1
99
输入 #2
99 3
输出 #2
7
输入 #3
99 2
输出 #3
12
输入 #4
1000000000000 2
输出 #4
1010196
输入 #5
1000000000000000000 3
输出 #5
1036002
输入 #6
1000000000000000000 2
输出 #6
1001003332
说明/提示
对于所有数据,保证 $1 \leq n \leq 10^{18}$,$1 \leq k \leq 100$。
|测试点编号|$n \le$|$k$|
|:-:|:-:|:-:|
|1|$10^2$|$=1$|
|2|$10^2$|$\ge 2$|
|3|$10^4$|$\ge 3$|
|4|$10^4$|$\ge 2$|
|5|$10^6$|$\ge 3$|
|6|$10^6$|$\ge 2$|
|7|$10^8$|$\ge 3$|
|8|$10^8$|$\ge 2$|
|9|$10^{10}$|$\ge 3$|
|10|$10^{10}$|$\ge 2$|
|11|$10^{12}$|$\ge 3$|
|12|$10^{12}$|$\ge 2$|
|13|$10^{14}$|$\ge 3$|
|14|$10^{14}$|$\ge 2$|
|15|$10^{16}$|$\ge 3$|
|16|$10^{16}$|$\ge 2$|
|17|$10^{18}$|$\ge 3$|
|18|$10^{18}$|$\ge 2$|
|19|$10^{18}$|$\ge 2$|
|20|$10^{18}$|$\ge 2$|
|测试点编号|$n \le$|$k$|
|:-:|:-:|:-:|
|1|$10^2$|$=1$|
|2|$10^2$|$\ge 2$|
|3|$10^4$|$\ge 3$|
|4|$10^4$|$\ge 2$|
|5|$10^6$|$\ge 3$|
|6|$10^6$|$\ge 2$|
|7|$10^8$|$\ge 3$|
|8|$10^8$|$\ge 2$|
|9|$10^{10}$|$\ge 3$|
|10|$10^{10}$|$\ge 2$|
|11|$10^{12}$|$\ge 3$|
|12|$10^{12}$|$\ge 2$|
|13|$10^{14}$|$\ge 3$|
|14|$10^{14}$|$\ge 2$|
|15|$10^{16}$|$\ge 3$|
|16|$10^{16}$|$\ge 2$|
|17|$10^{18}$|$\ge 3$|
|18|$10^{18}$|$\ge 2$|
|19|$10^{18}$|$\ge 2$|
|20|$10^{18}$|$\ge 2$|