数论
Angel-Yan
这个作者很懒,什么都没留下…
展开
-
LightOJ-1054 Efficient Pseudo Code
题意: 求n^m的因子和思路:对n进行素因子分解。n = p1^a1 * p2^a2 * .... * ps^asσ(n) = ((p1^(a1+1)-1)/(p1-1) * ((p2^(a2+1)-1)/(p2-1) * .... * ((pj^(aj+1)-1)/(pj-1)) = Π(j=1 -> s) (pj^(aj+1)-1)/(pj-1) 因子和函数σ定义为整数n的所有正因...原创 2018-02-20 19:07:24 · 314 阅读 · 0 评论 -
ZOJ - 2865 A very easy task
本文章学习于 acdreamers二项式定理: 这个题因为n太大了,所以用java大数写 在递归的时候 记忆化一下import java.math.*;import java.util.*;public class Main { public static final int N = 105; public static final BigIn...原创 2018-11-19 21:38:49 · 453 阅读 · 0 评论 -
HDU6266 - Hakase and Nano && 狄利克雷卷积
前置技能积性函数f(n) != 0 且 对于gcd(m, n) = 1f(mn) = f(m)f(n)则称该函数为积性函数 完全积性函数对于任意的f(mn) = f(m)f(n) , 则 f(n)为完全积性函数 欧拉函数欧拉函数是小于n的正整数中与n互质的数的数目(φ(1)=1) φ(p) = p-1φ(p^k) = p^k * (1 ...原创 2018-11-08 22:24:23 · 254 阅读 · 0 评论 -
HDU5667 - Sequence 矩阵快速幂 + 费马小定理
f[1] = 1f[2] = a ^ b其实不是很好的去想到取log的 两边同时取log然后 F[2] = b F[1] = 0则 f[n] = a^(F[n]) % p 费马小定理 : ① 判断素数,对于大素数的判定,Miller-Rabin 素数判定②求解逆元 ,设a模p的逆元为x,则a*x≡1(mod p) ,(a,p)=1;由费马小定理可以知道x=...原创 2018-09-30 16:40:49 · 180 阅读 · 0 评论 -
HDU 5950 Recursive sequence
T组数据, 每次给你 n A B 三个数字。f[1] = A , f[2] = B , f[n] = 2 * f[n-2] + f[n-1] + n^4 思路: 啊啊啊啊啊 矩阵快速幂 一定先要去构造单位矩阵 式子1 : f[i] = 2 * f[i - 2] + f[i - 1] + i ^ 4式子2 : f[i + 1] = 2 * f[i - 1] + f[i]...原创 2018-09-29 12:29:36 · 109 阅读 · 0 评论 -
CodeForces405B - Jzzhu and Sequences 矩阵快速幂
就是说:f1 = x; f2 = y; 然后 f(i) = f(i-1) + f(i+1)化简一下式子:f(i+1) = f(i) - f(i-1)用i 替换 i+1, 则f(i) = f(i-1) - f(i-2) 这样就差不多可斐波那契的矩阵快速幂了 构造一个矩阵就是很裸的矩阵快速幂了 注意取膜啊阿啊阿啊阿啊#include <stdi...原创 2018-09-29 09:55:50 · 102 阅读 · 0 评论 -
51nod 1133 - 矩阵快速幂(模版) 快速乘 + 快速幂 + 矩阵快速幂
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1113矩阵快速幂:首先前置技能: 快速幂 + 矩阵乘法。1 快速幂1.1 快速乘法题目:http://newoj.acmclub.cn/problems/20881.1.1引用自2009年国家集训队论文,骆可强:《论程序底层优化的一些方法与技...原创 2018-09-27 12:44:35 · 349 阅读 · 0 评论 -
米勒罗宾素数测试版-哥德巴赫猜想
#include <stdio.h>#include <iostream>#include <algorithm>#include <string.h>#include <math.h>#include <time.h>#include <queue>#include <stack&a原创 2018-09-26 15:34:03 · 181 阅读 · 0 评论 -
HDU 5015 233 Matrix 矩阵快速幂
题意就是现在有一个矩阵a,矩阵的第一行和第一列(出了a[0][0]) 给你, 让你求a[n][m]第一行是 a[0][1] = 233 , a[0][2] = 2333 , a[0][i] = a[0][i-1] * 10 + 3a[i][j] = a[i-1][j] + a[i][j-1]看题目:应该是矩阵快速幂了举个例子:输入:3 123 47 16我们手推...原创 2018-10-01 19:45:12 · 115 阅读 · 0 评论 -
CodeForces1005D - Polycarp and Div 3
题意: 给你一个字符串,然后让你尽可能多的去分解这个字符串 使得每一个分解出来的子串的和都是3的倍数思路: 同余对于单独的一个数字而言 如果是三的倍数 则 ans++否则 去考虑连续的两个数字 如果是 则 ans++否则 考虑连续的三个数字 如果第三个数字本身就是3的倍数 则ans++如果第三个数字不是3的倍数 那对于前两个数字x y 来说x y 对3求余只有两种情况 [1,1] [2,2]...原创 2018-07-10 21:58:47 · 491 阅读 · 0 评论 -
因子和,因子数,1到n的因子和,1到n的因子数
1 - 求n的因子和 因子和函数σ定义为整数n的所有正因子之和,记为σ(n) 它是一个积性函数 首先对n进行因子分解 (因子分解代码附后) n = p1^a1 * p2^a2 * ~~~ * px ^ ax σ(n) =((p1^(a1+1)-1)/(p1-1) * ((p2^(a2+1)-1)/(p2-1) * .... * ((pj^(aj+1)-1)/(pj-1)) = Π(j=1 -&g...原创 2018-04-26 19:39:26 · 3142 阅读 · 0 评论 -
伯努利数 + 自然数幂( Zoj2865 + 51Nod1228 + 51Nod1258 + 51Nod1822)
伯努利数定义: 将(B-1)^k展开 其中B^k作为伯努利数的第k项当k >= 2时 令(B - 1)^k = B^kB0 = 1然后我们计算前几项伯努利数然后我们通过伯努利数计算自然数幂...原创 2019-03-12 11:03:51 · 284 阅读 · 1 评论