蓝桥杯国14 互质

问题描述

请计算在 [1,2023的2023次幂] 范围内有多少个整数与 2023 互质。由于结果可能很大,你只需要输出对 109+7 取模之后的结果。

答案提交

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

**由于 2023 可以分解为质因数 717 的乘积(2023 = 7 * 17 * 17),任何包含 717 作为因子的数都与 2023 不互质。**用总数减去这些非互质的数,剩下的就是互质的数。

119 是 被 7 和 17 同时整除的数,只需要减去一次。

java 复制代码
import java.math.BigInteger;

public class 国14互质 {
    public static void main(String[] args) {
        BigInteger b7 = BigInteger.valueOf(7), b17 = BigInteger.valueOf(17), b119 = BigInteger.valueOf(119);
        BigInteger target = BigInteger.valueOf(2023).pow(2023);
        BigInteger cnt7 = target.divide(b7), cnt17 = target.divide(b17), cnt119 = target.divide(b119);
        BigInteger result = target.subtract(cnt7).subtract(cnt17).add(cnt119); // 119 是 被 7 和 17 同时整除的数,只需要减去一次
        System.out.println(result.mod(BigInteger.valueOf(1000000007)));
    }
}
java 复制代码
输出:640720414
相关推荐
闻缺陷则喜何志丹2 天前
【C++贪心】P8769 [蓝桥杯 2021 国 C] 巧克力|普及+
c++·算法·蓝桥杯·洛谷
旭意3 天前
C++微基础备战蓝桥杯之数组篇10.1
开发语言·c++·蓝桥杯
旭意4 天前
C++微基础备战蓝桥杯string篇10.5
开发语言·c++·蓝桥杯
Kent_J_Truman5 天前
【第几小 / 分块】
算法·蓝桥杯
闻缺陷则喜何志丹7 天前
【贪心之临项交换】P8732 [蓝桥杯 2020 国 ABC]|普及
c++·算法·蓝桥杯·贪心·洛谷
big\hero12 天前
蓝桥杯13届省题
职场和发展·蓝桥杯
@卞14 天前
第十六届蓝桥杯软件赛C组省赛C++题解(京津冀)
c语言·c++·蓝桥杯
黑泽明Coding16 天前
mac编译vst3sdk
macos·职场和发展·蓝桥杯
咸鱼爱学习17 天前
【题解】 [蓝桥杯 2019 省 B] 特别数的和
算法·职场和发展·蓝桥杯·模拟·枚举
笙歌已沫17 天前
蓝桥杯2024年第15届B组试题D
算法·职场和发展·蓝桥杯