数论学习(2019.4.4 - 2019.4.7) --4.4

数学基础

一、高精度

介绍就不写了,直接贴代码了

读入读出在最后再加上吧qwq

char str[1000];
int a[1000],b[1000],c[1000];

高精 + / -(这两个差不多,一块吧)

for(int i=len-1;i>=0;i--)
    b[len-i] = str[i]-‘0‘;
    int m = len;
    n = max(n,m);
    for(int i=1;i<=n;i++)
    c[i]=a[i]+b[i];
    for(int i=1;i<=n;i++)
    {
        c[i + 1] += c[i]/10;
        c[i] %= 10;
    }
    for(int i=1;i<=n;i++)
    if(c[i]<0)
    {
        c[i] += 10;
        c[i + 1] -= 1;
    }
    while(c[n] == 0)
    n -= 1;

高精 *

for(int i=1;i<=n;i++)
    for(int j=1;j<=m;j++)
    c[i + j - 1] += a[i] * b[j];
    for(int i=1;i<=n+m-1;i++)
    {
        c[i + 1] += c[i] / 10;
        c[i] %= 10;
    }
    n = n + m - 1;
    while(c[n + 1] > 0)
    n += 1;

高精 /  (B为低精的一个数)

        int B;
    cin>>B;
    for(int i=n;i>0;i--)
    {
        c[i] = a[i]/B;
        a[i - 1] += (a[i] % B) * 10;
    }
    while(c[n] == 0 && n > 0)
    n--;

输入输出

        scanf("%s", str);  //输入
    int len = strlen(str);
    for(int i=len-1;i>=0;i--)
    a[len - i] = str[i] - ‘0‘;
        for(int i=n;i>0;i--)  //输出
    printf("%d",c[i]);

二、快速幂:(代码未检查qwq)

1.分治

2.快速幂

三、费马小定理

应用:

三、(代码未检查qwq)

GCD

LCM

四、质数判别(代码未检查)

1.直接判

............

2.sqrt判别

3.埃氏筛法(O(n loglogn))

4.线性筛法(接近O(n))

五、Euler

欧拉函数

是小于或等于n的正整数中与n互质的数的数目

欧拉定理

若n,a为正整数,且n,a互素,则

 矩阵

其中满足

举一个例子:

其中请注意:

矩阵乘法满足结合律、分配率

但是不满足交换律

例:求 f[n] 即斐波那契数列的第n项

其中便是针对于这个进行运算q

拓展:

若f(n) = 4f(n - 1) - 3f(n - 2) + 2f(n - 4) + b

若f(n) = 4f(n - 1) - 3f(n - 2) + 2f(n - 4) + b

则将变换矩阵改为

邻接矩阵的一些应用:

建立邻接矩阵,并对于邻接矩阵进行k次方的运算,得出的结果f[A][B]即为结果

延伸一下:

将刚才的求和改为求最小值min

即为min n i =1 min (a[A][i] * a[i][B]) i 其中的路径

一些特殊的矩阵:

上三角矩阵:

分块矩阵:

高斯消元:

针对于求解 n 元 1 次线性方程组

形如:

举个例子:

无解的情况:

无数解的情况:

行列式已经学过就不再多提了;

单提一点:

矩阵逆元:

对于A进行变换的同时对于I单位矩阵进行变换

在A到达单位矩阵后I进行相等的变换会得到它的逆元

矩阵树定理:

还有一个 k ^ 2 log n求常系数线性递推方程(老师yy出来的)

太晚了...明天再补吧..

原文地址:https://www.cnblogs.com/lyp-Bird/p/10657169.html

时间: 2024-10-11 05:33:47

数论学习(2019.4.4 - 2019.4.7) --4.4的相关文章

Python学习路线分享(2019经典版)

Python 是Web 开发.游戏脚本.计算机视觉.物联网管理和机器人开发的主流语言之一,随着Python用户可以预期的增长,它还有机会在多个领域里登顶.Python学习路线(2019经典版)分享给你.阶段一是Python语言(用时5周,包括基础语法.面向对象.高级课程.经典课程):阶段二是Linux初级(用时1周,包括Linux系统基本指令.常用服务安装):阶段三是Web开发之Diango(5周+2周前端+3周diango):阶段四是Web开发之Flask(用时2周):阶段五是Web框架之To

19.go语言基础学习(上)——2019年12月16日

2019年12月16日16:57:04 5.接口 2019年11月01日15:56:09 5.1 duck typing 1. 2. 接口 3.介绍 Go 语言的接口设计是非侵入式的,接口编写者无须知道接口被哪些类型实现. 而接口实现者只需知道实现的是什么样子的接口,但无须指明实现哪一个接口. 编译器知道最终编译时使用哪个类型实现哪个接口,或者接口应该由谁来实现. 每个接口类型由数个方法组成.接口的形式代码如下: type 接口类型名 interface{ 方法名1( 参数列表1 ) 返回值列表

WPS 2019|WPS Office 2019官方最新版 v11.1下载

点击下载WPS Office 2019官方最新版WPS 2019是一款由金山软件公司自主研发并推出的最新办公软件套装,而作为目前来说最新的版本,其无论是在功能上还是在本身的系统优化上都得到前所未有的加强,还带来了全新的用户界面,绝对会让摆脱旧版界面的审美疲劳,给你焕然一新的感觉!同时还将wps文字,wps演示,wps表格合而为一,消除了组件隔阂,现在用户只需在一个窗口下就可以打开doc\xls\ppt文件,不必先寻找对应组件, 再切换文档标签,非常便捷!不仅如此,WPS 2019还加强了标签管理

【 Ex 2019 】 WinSrv 2019 安裝 Ex 2019

由於這個是測試環境,你還是需要準備:IP段.域名等. 1.Windows Server 2019 創建 域(略)其實跟Windows Server 2016的方法一致,有時間我會再做一個教程出來. 2.下載 Exchange 2019(體驗版)http://blog.51cto.com/happynews/2153851 3.客戶端加入 域(略)其實跟你以往的經驗一致,有時間我會再做一個. 4.管理員啟動PowerShell 5.運行IIS的安裝命令( Install-WindowsFeatur

数论学习之费马与欧拉

数论复习之费马与欧拉 QB_UDG  2016年11月8日10:16:18 1.费马小定理 Fermat Theory 如果 p是素数,且a与p互质,即gcd(a,p)=1   那么(a^p-1) ≡ 1 (mod p) 应用: 求乘法逆元   乘法逆元: (x*x')≡ 1 (mod p) 称x'为x模p的乘法逆元 (注意,一定要是余1) 逆元 :(b/a) (mod n) = (b * x) (mod n). x表示a的逆元.并且 a*x ≡ 1 (mod n)  注意:只有当a与n互质的时

数论学习之扩展欧几里得

数论之扩欧 QB_UDG 2016年11月8日11:34:40 1.       扩展欧几里德算法 用途:在已知整数a,b的情况下求不定方程ax+by=gcd(a,b)的一组整数解x,y; 原理: 设 a*x1+b*y1=gcd(a, b); 设 b*x2+(a%b)*y2=gcd(b, a%b); 由欧几里德定理知: gcd(a, b)==gcd(b, a%b) 所以==>a*x1+b*y1=b*x2+(a%b)*y2 也就是==>a*x1+b*y1=b*x2+(a-(a/b)*b)*y2

数论学习_欧拉函数

在数论,对正整数n,欧拉函数是小于n的正整数中与n互质的数的数目(φ(1)=1).此函数以其首名研究者欧拉命名(Euler'so totient function),它又称为Euler's totient function.φ函数.欧拉商数等. 例如φ(8)=4,因为1,3,5,7均和8互质. 从欧拉函数引伸出来在环论方面的事实和拉格朗日定理构成了欧拉定理的证明. 求解小于n且与n互素的整数个数.给出正整数n的唯一分解式: n=p1a1p2a2p3a3......pkak,求1,2,3.....

数论学习笔记之解线性方程 a*x + b*y = gcd(a,b)

~>>_<<~ 咳咳!!!今天写此笔记,以防他日老年痴呆后不会解方程了!!! Begin ! ~1~, 首先呢,就看到了一个 gcd(a,b),这是什么鬼玩意呢?什么鬼玩意并不重要,重要的她代表的含义,其实呢,gcd(a,b)就表示 非负整数 a 和 b(不同时为0) 的最大公约数,(数论概论上说:计算 a 与 b 的最大公因数的更低效方法是我女儿四年级老师教的方法,老师要求学生求出 a 与 b 的所有因数,然后找出同时出现在两个表中的最大数字. YES!A good idea f

毕设之路:本周计划(二)2019.10.28——2019.11.03

一.计划任务 1.熟悉编程软件,编程语言. 2.完成系统页面框架. 3.完成数据库设计. 二.主要内容 1.按照网上教程,熟悉Android studio. 2.简单设计七个界面:即系统的六个子系统界面和主界面. 3.完成数据库的设计和创建. 学习链接:https://www.open-open.com/lib/view/open1468121618489.html 原文地址:https://www.cnblogs.com/liurx/p/11750531.html