莫比乌斯函数

news2024/9/23 23:35:24

积性函数定义

 若gcd(p,q)=1,有f(p*q)=f(p)*f(q),则f(x)是积性函数

其中规定f(1)=1,对于积性函数有:所有的积性函数都可以用筛法求出

常见的积性函数有欧拉函数和莫比乌斯函数

筛法求莫比乌斯函数

const int N = 1e9 + 5;
const int max1 = 1e9;
int b[N], prime[N], mo[N];
int cnt;
void init()
{
    memset(b, 1, sizeof(b));
    b[0] = b[1] = 0;
    mo[1] = 1;
    for (int i = 2; i <= max1; i++) {
        if (b[i]) {
            prime[++cnt] = i;
            mo[i] = -1;//质数的莫比乌斯函数值为-1
        }
        for (int j = 1; j <= cnt && prime[j] * i <= max1; j++)//质数的质数倍,保证不做重复运算
        {
            b[prime[j] * i] = 0;//标记为0,即为非质数
            if (i % prime[j] == 0) break;//解释为i的最小素因子是prime[j],但我猜测此时i==prime[j]
            mo[prime[j] * i] = -mo[i];//由于prime[j]是质数且i不是prime[j]整数倍,所以就会多出一个质数,即变为相反
        }
    }
}

判断某一个莫比乌斯函数值且n较大筛法无法筛出时可以使用类似于素因子分解逐级乘上去

int n;
    cin >> n;
    int ans = 1;
    for (int i = 2; i * i <= n; i++) {
        if (n % i == 0) {
            if (n % (i * i) == 0) {
                cout << 0 << endl;
                return 0;
            }
            while (n % i == 0) n /= i;
            ans *= (-1);
        }
    }
    if (n) ans *= (-1);
    cout << ans << endl;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1353389.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

哪些洗地机比较好?洗地机选购指南

随着社会生活水平的提高&#xff0c;人们对居家环境的卫生和清洁要求不断提升。家用洗地机作为一种先进的清洁工具&#xff0c;带来了许多便利和优势&#xff0c;特别是在解决一些特殊需求的家庭环境方面。 以下是一些家用洗地机的优势和适用场景&#xff1a; 1.高效清洁&…

[ Tool ] celery分布式任务框架基本使用

celery官方 Celery 官网&#xff1a;www.celeryproject.org/ Celery 官方文档英文版&#xff1a;docs.celeryproject.org/en/latest/i… Celery 官方文档中文版&#xff1a;docs.jinkan.org/docs/celery… Celery是一个简单、灵活且可靠的&#xff0c;处理大量消息的分布式系…

HackTheBox - Medium - Linux - Agile

Agile Agile 是一个中等难度的 Linux 机器&#xff0c;在端口 80 上有一个密码管理网站。创建帐户并添加几个密码后&#xff0c;发现网站的导出到 CSV 功能容易受到任意文件读取的攻击。其他终结点的枚举显示“/download”在访问时引发错误&#xff0c;并显示“Werkzeug”调试…

贪心算法part05 435无重叠区间

435无重叠区间 763 划分字母区间 56合并区间

什么是聚合支付,又能带来哪些好处?

随着科技的飞速发展&#xff0c;人们的支付方式也在不断地发生变革。从最初的现金支付、银行卡支付&#xff0c;到现在的移动支付、扫码支付等&#xff0c;支付方式已经变得越来越便捷。聚合支付作为一种新型的支付方式&#xff0c;也在逐渐改变着人们的生活方式。那么&#xf…

CSS 中间位置翻转动画

<template><div class"container" mouseenter"startAnimation" mouseleave"stopAnimation"><!-- 旋方块 --><div class"box" :class"{ rotate-hor-center: isAnimating }"><!-- 元素内容 -->…

一篇文章带你搞定Python所有内置函数

前言 Python 内置了许多的函数和类型&#xff0c;比如print()&#xff0c;input()等&#xff0c;我们可以直接在程序中使用它们&#xff0c;非常方便&#xff0c;并且它们是Python解释器的底层实现的&#xff0c;所以效率是比一般的自定义函数更有效率。目前共有71个内置函数&…

深入解析d3dcompiler_47.dll文件及其丢失的修复方法

一、d3dcompiler_47.dll是什么文件&#xff1f; d3dcompiler_47.dll是DirectX SDK中的一个动态链接库文件&#xff0c;它是用于编译DirectX着色器的工具之一。DirectX是由微软公司开发的一种多媒体编程接口&#xff0c;它提供了一系列的API和工具&#xff0c;用于开发游戏和多…

打造专业开发者指南:针对ShardingProxy分库分表解决策略的深度剖析 – 详解部署、使用、服务治理与优化技巧

一、 ShardingProxy快速使用 ShardingProxy的功能同样是分库分表&#xff0c;但是他是一个独立部署的服务端&#xff0c;提供 统一的数据库代理服务。注意&#xff0c;ShardingProxy目前只支持MySQL和PostgreSQL。并且&#xff0c;客户端连接ShardingProxy时&#xff0c;最好使…

java每日一题——双色球系统(答案及编程思路)

前言&#xff1a; 打好基础&#xff0c;daydayup! 题目&#xff1a;要求如下&#xff08;同时&#xff1a;红球每个号码不可以相同&#xff09; 编程思路&#xff1a;1&#xff0c;创建一个可以录入数字的数组&#xff1b;2&#xff0c;生成一个可以随机生成数字的数组&#xf…

MT8766安卓核心板规格参数_MTK8766核心板模块方案定制

MT8766安卓核心板&#xff1a;高性能、稳定可靠、集成度高的一体化解决方案 MT8766安卓核心板采用联发科MTK8766四核4G模块方案&#xff0c;是一款高度集成的安卓一体板。四核芯片架构&#xff0c;主频可达到2.0GHz&#xff0c;支持国内4G全网通。12nm制程工艺&#xff0c;支持…

虾皮跨境电商选品有哪些规则

如何在虾皮&#xff08;Shopee&#xff09;平台上进行跨境电商选品在如今全球化的商业环境中&#xff0c;跨境电商已成为许多卖家拓展业务的重要途径。虾皮&#xff08;Shopee&#xff09;作为一家知名的跨境电商平台&#xff0c;为卖家提供了丰富的销售机会。然而&#xff0c;…

Linux 485驱动通信异常

背景 前段时间接到一个项目&#xff0c;要求用主控用485和MCU通信。将代码调试好之后&#xff0c;验证没问题就发给测试了。测试测的也没问题。 但是&#xff0c;到设备量产时&#xff0c;发现有几台设备功能异常。将设备拿回来排查&#xff0c;发现是485通信有问题&#xff…

大语言模型LLM微调技术:P-Tuning

1 引言 Bert时代&#xff0c;我们常做预训练模型微调&#xff08;Fine-tuning&#xff09;&#xff0c;即根据不同下游任务&#xff0c;引入各种辅助任务loss和垂直领域数据&#xff0c;将其添加到预训练模型中&#xff0c;以便让模型更加适配下游任务的方式。每个下游任务都存…

生活中危险的气体:一氧化碳与二氧化碳中毒的症状及安全预防措施

一氧化碳和血红蛋白亲和力超过氧气&#xff0c;会占用血红蛋白&#xff0c;导致缺氧。 二氧化碳会和血浆结合&#xff0c;导致血液pH值不正常&#xff0c;抑制呼吸&#xff0c;导致窒息。 通俗点说&#xff1a;一氧化碳是中毒&#xff0c;二氧化碳则是窒息。 一氧化碳中毒 …

【完整代码】网上书店信息管理系统--基于Mysql数据库与java

网上书店信息管理系统 一、需求分析&#xff08;一&#xff09;设计系统的意义以及用途&#xff08;二&#xff09;实现的功能1.用户模块&#xff1a;1、全部图书浏览2、图书搜索3、购物车管理和订单查看4、修改密码 2.书店管理员模块1、图书类别管理2、图书管理3、全部订单查看…

互联网加竞赛 Yolov安全帽佩戴检测 危险区域进入检测 - 深度学习 opencv

1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; Yolov安全帽佩戴检测 危险区域进入检测 &#x1f947;学长这里给一个题目综合评分(每项满分5分) 难度系数&#xff1a;3分工作量&#xff1a;3分创新点&#xff1a;4分 该项目较为新颖&am…

ISCTF 2023 miscweb wp

web 圣杯战争!!! 题目: PHP <?php highlight_file(__FILE__); error_reporting(0); class artifact{ public $excalibuer; public $arrow; public function __toString(){ echo "为Saber选择了对的武器!<br>"; return $this…

阿里云性能测评ESSD Entry云盘、SSD云盘、ESSD和高效云盘

阿里云服务器系统盘或数据盘支持多种云盘类型&#xff0c;如高效云盘、ESSD Entry云盘、SSD云盘、ESSD云盘、ESSD PL-X云盘及ESSD AutoPL云盘等&#xff0c;阿里云百科aliyunbaike.com详细介绍不同云盘说明及单盘容量、最大/最小IOPS、最大/最小吞吐量、单路随机写平均时延等性…

Python中的垃圾回收机制是什么

一、写在前面&#xff1a; 我们都知道Python一种面向对象的脚本语言&#xff0c;对象是Python中非常重要的一个概念。在Python中数字是对象&#xff0c;字符串是对象&#xff0c;任何事物都是对象&#xff0c;而它们的核心就是一个结构体--PyObject。 typedef struct_object{i…