Project Euler_Problem 193_Few Repeated Digits_欧拉筛+容斥公式

原题目:

题目大意:

解题思路:

代码:

cpp 复制代码
void serch(ll I,ll sum,ll used) {
    ll i, j, l, x,y;

    
    for (i = 1; i < I; i++) {
        if (sum * D[i] > N)break;
        x = sum * D[i];
        y = N / x;

        if (used % 2 == 0) {
            ans1 = ans1 - y;
        }
        else {
            ans1 = ans1 + y;
        }

        serch(i, x, used + 1);

    }

}


void solve() {
    ll i, j,k,x,y,z,p,q,u,v;
    N = (( (ll)1 )<<50), NN = 4;
    //N = 20;
    double a, b, c,d;
    M.NT.get_prime_Euler(100000000);
    
    for (i = 1; i <= M.NT.pcnt; i++) {
        x = M.NT.prime[i];
        if (x * x > N)break;
    }

    ll len = i - 1;

    for (i = 1; i <= len; i++) {
        D[i] = M.NT.prime[i] * M.NT.prime[i];
        ans1 = ans1 + N / D[i];
    }

    for (i = len; i >= 1; i--) {
        serch(i, D[i], 2);
    }
    

    printf("%lld\n",N-ans1);
}
相关推荐
yaaakaaang6 分钟前
二十二、模板方法模式
java·模板方法模式
Wmenghu6 分钟前
Ubuntu手动安装jdk;Ubuntu手动安装Maven;Ubuntu手动安装RocketMQ;Ubuntu手动安装RocketMQ-Dashbo
java·linux·ubuntu
后置的猿猴8 分钟前
Spring 循环依赖
java·后端·spring
SeSs IZED10 分钟前
SSM与Springboot是什么关系? -----区别与联系
java·spring boot·后端
橙子1991101611 分钟前
Java 基础相关
java·开发语言
勿忘,瞬间12 分钟前
SpringBoot配置文件
java·spring boot·后端
coderyi14 分钟前
LLM Agent 浅析
前端·javascript·人工智能
我叫黑大帅16 分钟前
TypeScript 6.0 弃用选项错误 TS5101 解决方法
javascript·后端·面试
科雷软件测试19 分钟前
使用python+Midscene.js AI驱动打造企业级WEB自动化解决方案
前端·javascript·python
fTiN CAPA22 分钟前
Tomcat 都有哪些核心组件
java·tomcat·firefox