CF83D Numbers
题目描述
在某个普通的日子,Valera 去上学了(毕竟在工作日他也没别的地方可去)。在数学课上,他最喜欢的老师 Ms. Evans 给学生们讲解了约数的知识。尽管 Valera 很喜欢数学,但他发现这一话题非常无聊。甚至无聊到他在课堂上睡着了。直到上课铃的响声才把他从美梦中唤醒。
当然,宝贵的课程内容和老师的讲解 Valera 都错过了。然而,无论如何,他还是得完成这道家庭作业。因为对新知识点一无所知,他无法独立完成任务,于是向你求助。你毕竟是他最好的朋友,肯定不会拒绝帮忙。
Valera 的家庭作业只有一道题,虽然描述简单,但其实并不容易解决。题目如下:如果考虑区间 $[a, b]$ 中的所有正整数,需要统计这样一些数的个数:在这些数中,它们的最小约数等于某个整数 $k$(不需要考虑约数为 $1$ 的情况)。换句话说,你需要统计区间 $[a, b]$ 中有多少个数,不被 $2$ 到 $k-1$ 之间的任一数整除,但能被 $k$ 整除。
输入格式
第一行包含三个正整数 $a$、$b$、$k$($1 \leq a \leq b \leq 2 \cdot 10^{9},\ 2 \leq k \leq 2 \cdot 10^{9}$)。
输出格式
输出一行,表示满足条件的数的个数。
说明/提示
对于样例的说明:
在第一个样例中,答案为 $2, 4, 6, 8, 10$。
在第二个样例中,答案为 $15, 21$。
在第三个样例中,没有满足条件的数。
由 ChatGPT 5 翻译