AT_s8pc_2_b.Division 2
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
兔子目前参加着一个编程竞赛,并处在 Division 2 ,却一直难以晋升到 Division 1。因此,兔子对将一个整数除以 2 这种操作心怀不满。
现在,兔子在黑板上写下了从 1 到 n 的所有整数,并计划进行 q 次操作。每次操作的规则如下:
- 在第 i 次操作时,找到黑板上所有能被 ai 整除的数,并将这些数仅除以 ai 一次。
经过这些操作后,黑板上会剩下多少个数字是 1?
输入格式
输入由以下格式给出:
- 第一行包含两个整数 n 和 q,它们分别表示黑板上的数字数量和计划的操作次数。
- 接下来的 q 行,每行包含一个整数 ai,表示第 i 次操作中用于除数的具体数值。
输出格式
请输出一个整数,表示经过所有操作后,黑板上剩下的数字 1 的总个数。
输入输出样例
输入#1
7 2 3 6
输出#1
2
输入#2
7 2 6 3
输出#2
3
输入#3
输出#3
2
输入#4
输出#4
9
说明/提示
约束条件
- $ 1 \le n \le 10^{13} $
- $ 1 \le q \le 24 $
- $ 3 \le a_i \le 50 $
子任务
- 子任务 1 [25 分]: 满足 $ 1 \le n \le 10^6 $。
- 子任务 2 [75 分]: 无额外约束。
样例解释
样例 1:
初始化黑板上的数字为:1 2 3 4 5 6 7。
经过第一次操作,3 为除数:1 2 1 4 5 2 7。
经过第二次操作,6 为除数:1 2 1 4 5 1 7。
最终结果:有数量为 3 和 6 的数字变成了 1。
样例 2:
初始化黑板上的数字为:1 2 3 4 5 6 7。
经过第一次操作,6 为除数:1 2 3 4 5 1 7。
经过第二次操作,3 为除数:1 2 1 4 5 1 7。
最终结果:数量为 1、3、和 6 的数字共 3 个变成了 1。
样例 3:
初始化黑板上的数字为:1 2 3 4 5 6 7 8。
经过第一次操作,4 为除数:1 2 3 1 5 6 7 2。
经过第二次操作,8 为除数依然保持:1 2 3 1 5 6 7 1。
接下来的操作中,不再有变化,最终1,4 四个数字变成了1。
本翻译由 AI 自动生成
输入解题思路,AI测评打分。不知道怎么写?