网络空间安全数学基础·整除与同余
主要内容:
整除的基本概念(掌握)
素数(掌握)
同余的概念(掌握)
1.1整除
定义:设a,b是任意两个整数,其中b≠0,如果存在一个整数q,使 a = qb,则我们称b整除a,或a被b整除,记为b|a,此时称 b是a的因子,a是b的倍数。
例:a=10, b=2则有2|10;若a=100, b=10有10|100
例:设a是整数,a≠0, 则a|0。
整除的基本性质:
1. 如果b|a且a|b,则b = a或b = -a。
2. 如果a|b且b|c,则a|c。
3. 如果c|a且c|b,则c|ua+vb,其中u,v是整数。
整除的基本性质(补充):
(1) a|b<=>-a|b<=>a|-b<=>-a|-b<=>|a| | |b|
(2) b≠0且a|b => |a|≤|b|
带余除法:当两个整数不能整除时,我们有带余除法:
定义:对于a,b两个整数,其中b≠0,则存在唯一q,r使得:a=bq+r,0 ≤ r<|b|。r称为a被b除得到的余数, 当r = 0时,b|a。
例:
1)a = –37, b= 5,则–37 = (-8)×5+3,q=8,r=3
2)a = 67,b= 7,则67=(9)×(7)+4,q=9, r=4
最大公因子:
定义:
1) 设a,b是两个整数,如果整数c|a且c|b,则c称为a,b的公因子。
2) 设c>0是两个不全为零的整数a,b的公因子,如果a,b的任何公因子都整除c,则c称为a,b的最大公因子,记为c=(a,b)。
最大公因子性质:
1.(a,b)=(-a,b)=(a,-b)=(-a,-b)=(|a|,|b|)
2.(0,a)=a
最大公因子(求解)
例:(-3824,1837)
最大公因子定理:
定理:设a,b是两个不全为零的整数,则存在两个整数u, v,使得:(a, b)=ua+vb。
例:将a = 888,b = 312的最大公因子表示为(a,b) = ua+vb。
1.2互素
定义:设a,b是两个不全为0的整数,如果(a, b)=1,则称a,b互素。
推论:a, b互素的充分必要条件是:存在u,v,使ua+vb=1。
互素性质:
1) 如果c|ab且(c, a) = 1,则c|b 。
2) 如果a|c,b|c,且(a, b) = 1,则ab|c 。
3) 如果(a,c) = 1,(b,c) = 1,则(ab,c) =1 。
最小公倍数:
定义:
1) 设a, b是两个不等于零的整数.如果a|d,b|d,则称d是a和b的公倍数。
2) a和b的正公倍数中最小的称为a和b的最小公倍数,记为[a,b] 。
最小公倍数性质:
[a,b] = [–a,b] = [a,–b] = [–a,–b] = [|a|,|b|]
例:a = 2,b = 3.它们的公倍数集合为{0,±6,±12,±18,…}.而[2,3] = 6 。
最小公倍数与最大公因子关系:
定理:
1) 设d是a,b的任意公倍数,则[a, b] | d 。
2)
,特别地,如果(a, b) = 1, [a, b] = |ab|。
1.3素数
定义:如果一个大于1的整数p除±1和±p外无其他因子,则p称为一个素数,否则称为合数。
定理:设p是一个素数,则
1) 对任意整数a,如果p不整除a,则(p,a) = 1。
2) 如果p|ab,则p|a,或p|b。
算术基本定理:
定理:每个大于1的整数a都可以分解为有限个素数的乘积:a=p1p2…pr。该分解除素数因子的排列外是唯一的。
标准因子分解式:
由于p1,p2,…,pr中可能存在重复,所以a的分解式可表示为有限个素数的幂的乘积:
,这称为a的标准因子分解式。
例:2100的标准因子分解式:
素数无穷个:
定理:素数有无穷多个。
Eratosthenes筛法:
定理:设a是任意大于1的整数,则a的除1外最小正因子q是一素数,并且当a是一合数时,
。
对于一般N,Eratosthenes筛法可表述如下:
第1步 找出的全部
素数:p1,p2,…,pm。
第2步 在1~N中分别划去p1,p2,…,pm全部倍数。
第2步完成后剩下的数除1外就是不超过N的全部素数。
筛法原理如下:对于一个数a≤N,如果p1,p2,…,pm都不整除a,则a是素数。这是因为如果a是合数,则由定理它必有一素因子在p1,p2,…,pm中。
例:求不超过100的全部素数。
同理可以将因子5,7的倍数划去: (3) 划去5的全部倍数: (4) 划去7的全部倍数。
最终经过上述步骤后剩下的数除1外就是不超过100的全部素 数: (25个) 2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97
1.4 同余
定义:给定一个称为模的正整数m。如果m除整数a,b得相同的余数,即a=q1m+r,b=q2m+r,0≤ r小于等于m, 则称a和b关于模m同余,记为 a≡b (mod m)
例:25≡1(mod 8),16≡-5(mod 7)。
定理:整数a,b对模m同余的充分必要条件是:m|(a-b),即a = b+mt,t是整数。
同余性质及推论:

推论:如果a1≡b1 (mod m),a2≡b2 (mod m),则:
快速指数算法
例1-16:求解 2^64 (mod 641)
相关文章:
网络空间安全数学基础·整除与同余
主要内容: 整除的基本概念(掌握) 素数(掌握) 同余的概念(掌握) 1.1整除 定义:设a,b是任意两个整数,其中b≠0,如果存在一个整数q,使 …...
同旺科技 FLUKE ADPT 隔离版发布 ---- 说明书
所需设备: 1、FLUKE ADPT 隔离版 内附链接; 应用于:福禄克Fluke 12E / 15BMax / 17B Max / 101 / 106 / 107 应用于:福禄克Fluke 15B / 17B / 18B...
云计算-角色、特性和模型 (Roles, Characteristics, and Models)
角色、特性和模型 (Roles, Characteristics, and Models) 角色和边界 (Roles and Boundaries) 为了识别云计算模型,我们首先需要了解各种参与者的角色和边界。由于云系统通常遵循面向服务的模型,我们需要了解服务提供者和服务订阅者之间的边界。我们将遵…...
介绍一下Hugging Face,这个公司的背景是什么
Hugging Face是一家成立于2016年的人工智能公司,专注于为AI研究人员和开发者提供开源模型库和工具。以下是关于Hugging Face公司的详细背景介绍: 公司历史与创始人: Hugging Face由Clment Delangue、Julien Chaumond和Thomas Wolf三位法国籍…...
【C++高阶(一)】继承
目录 一、继承的概念 1.继承的基本概念 2.继承的定义和语法 3.继承基类成员访问方式的变化 编辑 4.总结 二、基类和派生类对象赋值转换 三、继承中的作用域 四、派生类的默认成员函数 1.派生类中的默认构造函数 2.派生类中的拷贝构造函数 3.派生类中的移动构造函数…...
AI原生嵌入式矢量模型数据库ChromaDB-部署与使用指南
在人工智能大模型领域, 离不开NLP技术,在NLP中词向量是一种基本元素,如何存储这些元素呢? 可以使用向量数据库ChromeDB Chroma Chroma 是 AI 原生开源矢量数据库。Chroma 通过为 LLM 提供知识、事实和技能,使构建 L…...
c# 画一个正弦函数
1.概要 c# 画一个正弦函数 2.代码 using System; using System.Drawing; using System.Windows.Forms;public class SineWaveForm : Form {private const int Width 800;private const int Height 600;private const double Amplitude 100.0;private const double Period…...
Docker学习(3):镜像使用
当运行容器时,使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载。 一、列出镜像列表 可以使用 docker images 来列出本地主机上的镜像。 各个选项说明: REPOSITORY&am…...
【Git】版本控制工具——Git介绍及使用
目录 版本控制版本控制系统的主要目标分类小结 分布式版本控制系统——GitGit特点Git与SVN的区别Git的工作机制 Git安装Git 团队协作机制团队内协作跨团队协作远程仓库远程仓库的作用有以下几个方面远程仓库操作流程/团队协作流程 Git分支什么是分支分支的好处 Git的常用命令Gi…...
面试八股之JVM篇3.6——垃圾回收——强引用、弱引用、虚引用、软引用
🌈hello,你好鸭,我是Ethan,一名不断学习的码农,很高兴你能来阅读。 ✔️目前博客主要更新Java系列、项目案例、计算机必学四件套等。 🏃人生之义,在于追求,不在成败,勤通…...
博客摘录「 Sql Server 收缩日志文件原理及always on 下的实践」2024年5月22日
四、Always on 环境下实践 先对数据库进行完整备份: EXEC sp_configure show advanced options, 1; RECONFIGURE; EXEC sp_configure xp_cmdshell, 1; RECONFIGURE; DECLARE DbName NVARCHAR(1000); DECLARE myCursor CURSOR LOCAL STATIC FOR S…...
每日一题(5)——StringBuffer操作
编写程序,对StringBuffer对象进行追加,插入和修改缓冲区长度等操作; class StringDemo{public static void main(String[] args){boolean btrue;int i321;long l123456;String s1new String("Hello,world!");StringBuffer s2new S…...
默认路由实现两个网段互通实验
默认路由实现两个网段互通实验 **默认路由:**是一种特殊的静态路由,当路由表中与数据包目的地址没有匹配的表项时,数据包将根据默认路由条目进行转发。默认路由在某些时候是非常有效的,例如在末梢网络中,默认路由可以…...
ComfyUI完全入门:图生图局部重绘
大家好,我是每天分享AI应用的萤火君! 这篇文章的主题和美女有关,不过并不是教大家生产美女视频,而是讲解 ComfyUI 的图生图局部重绘,其中将会以美女图片为例,来展示局部重绘的强大威力。 先看看效果&…...
基于UDP的网络多人聊天室
UDP服务器 #include <myheader.h>//宏定义打印错误信息 #define PRINT_ERR(msg) \do \{ \printf("%S,%D,%S\n",__FI…...
美国FDA认证是什么,食品FDA注册申请流程
美国FDA认证是什么? 美国FDA认证,全称为美国食品药品监督管理局(Food and Drug Administration)的认证,是美国政府为了确保食品、药品、医疗器械等产品的安全性和有效性所设立的重要制度。FDA认证的种类繁多&#x…...
golang的context和chan 的使用
1. context 作用 context包的context的接口,主要是控制协程执行上下文的时间,以及取消程序的执行,以及上下文中传递数据等作用,golang中耗时或者需要协同的操作都会见到context的身影。 context有几个常用的方法 1.1 context.B…...
洛谷P3574 [POI2014] FAR-FarmCraft(树形dp)
洛谷 P 3574 [ P O I 2014 ] F A R − F a r m C r a f t (树形 d p ) \Huge{洛谷P3574 [POI2014] FAR-FarmCraft(树形dp)} 洛谷P3574[POI2014]FAR−FarmCraft(树形dp) 文章目录 题意题目说明 思路标程 题目…...
vue/core源码中ref源码的js化
起源: 当看见reactivity文件中的ref.ts文件长达五百多的ts代码后,突发奇想想看下转化成js有多少行。 进行转化: let shouldTrack true; // Define shouldTrack variable let activeEffect null; // Define activeEffect variable// 定义…...
准备打ccf
准备打ccf...
Zustand 状态管理库:极简而强大的解决方案
Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...
django filter 统计数量 按属性去重
在Django中,如果你想要根据某个属性对查询集进行去重并统计数量,你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求: 方法1:使用annotate()和Count 假设你有一个模型Item,并且你想…...
[Java恶补day16] 238.除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...
pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...
深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用
文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么?1.1.2 感知机的工作原理 1.2 感知机的简单应用:基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...
【Linux】Linux 系统默认的目录及作用说明
博主介绍:✌全网粉丝23W,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物…...
NPOI操作EXCEL文件 ——CAD C# 二次开发
缺点:dll.版本容易加载错误。CAD加载插件时,没有加载所有类库。插件运行过程中用到某个类库,会从CAD的安装目录找,找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库,就用插件程序加载进…...
脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)
一、OpenBCI_GUI 项目概述 (一)项目背景与目标 OpenBCI 是一个开源的脑电信号采集硬件平台,其配套的 OpenBCI_GUI 则是专为该硬件设计的图形化界面工具。对于研究人员、开发者和学生而言,首次接触 OpenBCI 设备时,往…...
学习一下用鸿蒙DevEco Studio HarmonyOS5实现百度地图
在鸿蒙(HarmonyOS5)中集成百度地图,可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API,可以构建跨设备的定位、导航和地图展示功能。 1. 鸿蒙环境准备 开发工具:下载安装 De…...




