数论
文章平均质量分 65
霜刃未曾试
这个作者很懒,什么都没留下…
展开
-
HDU 1576 A/B 扩展欧几里得
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1576思路:此处来自百度:设(A/B)%9973 = K, 则A/B = k + 9973x (x未知), 因此A = kB + 9973xB,又A%9973 = n, 所以kB%9973 = n, 故kB = n + 9973y (y未知)故(k/n)B +(-y/n)*9973原创 2016-03-26 18:57:14 · 412 阅读 · 0 评论 -
欧拉函数模板
欧拉函数:在数论,对正整数n,欧拉函数是小于n的正整数中与n互质的数的数目(φ(1)=1)。 欧拉函数公式:ϕ(n)=n∏(1−1p)\phi(n)=n\prod(1-\frac{1}{p}),其中pp是可以整除nn的素数 根据公式,写出如下程序: 求单个数的欧拉函数:int Phi(int n) { int res = n; int m = (int)sqrt(n原创 2017-04-19 20:03:10 · 780 阅读 · 0 评论 -
线性筛和素性测试
线性筛:对于每个合数,只用它的最大因子把它筛掉,避免了埃氏筛法中的重复筛选。具体写法不做证明,百度上很明白了//线性筛求素数表#include <bits/stdc++.h>using namespace std;typedef long long ll;const int N = 1000010;int f[N], prime[N];int table(){ f[0] = f[原创 2016-11-27 19:25:36 · 401 阅读 · 0 评论 -
关于裴蜀定理的一些证明
裴蜀定理: 对任何a,b∈Za,b \in Z和它们的最大公约数dd,关于未知数xx和yy的线性不定方程(称为裴蜀等式):ax+by=cax+by=c有整数解(x,y)(x,y)当且仅当d∣cd \mid c,可知有无穷多解。特别地,一定存在整数x,yx,y,使ax+by=dax+by=d成立。 推论: a,ba,b互质的充要条件是存在整数x,yx,y使ax+by=1ax+by=1对于(a,b原创 2017-04-09 16:49:04 · 16138 阅读 · 1 评论 -
POJ 2635 The Embarrassed Cryptographer 高精度取模 + 线性筛
题目: http://poj.org/problem?id=2635题意:给定一个大数k,是两个素数的乘积,问这两个素数中最小的一个是否小于L,若是就输出”bad”和素数,否则额输出good思路:首先把L内的素数表打出来,然后高精度取模,但是用十进制取模的话会T,所以用更高进制,这里用的千进制数#include <iostream>#include <cstdio>#include <cstri原创 2017-04-09 14:24:25 · 332 阅读 · 0 评论 -
LightOJ 1045 - Digits of Factorial 简单数论
题目:http://www.lightoj.com/volume_showproblem.php?problem=1045题意:给定两个数n m,求n!化为m进制后有多少位数字思路:log10(n!) = log10(n) + log10(n-1) +…+ log10(1),化为m进制的话,则是logm(n!) = logm(n) + logm(n-1) +…+ logm(1),又有换底公式logm原创 2016-11-24 19:16:15 · 278 阅读 · 0 评论 -
poj 3070 Fibonacci 矩阵快速幂
题目:http://poj.org/problem?id=3070思路:就是矩阵快速幂的应用,没什么好说的,初学矩阵快速幂,第一题#include #include #include #include using namespace std;const int N = 2;const int mod = 10000;struct matrix{ int arr[N]原创 2016-04-11 11:16:48 · 548 阅读 · 0 评论 -
ACdream 1071 神奇的%系列一 筛选法
题目:http://acdream.info/problem?pid=1071题意:Problem Description在计算机的世界里,%不是百分比,而是除法取余哟!比如: 4 % 2 = 0 5 % 3 = 2给你 2 ≤ N ≤ 100000 个数,a[1],a[2]...a[i]...a[n] (1 ≤ a[i] ≤ 100000)。问原创 2016-05-28 17:57:24 · 652 阅读 · 0 评论 -
LightOJ 1014 Ifter Party 分解因子
题目:http://www.lightoj.com/volume_showproblem.php?problem=1014题意:有C个人和P个食物(不知道C),每人吃Q个食物还剩余L个食物(Q>L),从小到大输出所有Q的取值思路:可以知道总共吃了P - L个食物,如果P - L 总结:最近变的好傻逼啊。。。这么个水题由于粗心wa了几次。。。#include #include #原创 2016-09-08 11:59:54 · 673 阅读 · 0 评论 -
LightOJ 1007 Mathematically Hard 欧拉函数
题目:http://www.lightoj.com/volume_showproblem.php?problem=1007题意:对于数x,定义score(x) = n^2,n是1~x中与x互质的数的个数。然后求a~b之间所有数的score()之和思路:欧拉函数,很裸了,但结果会溢出,用long long也会溢出,用unsigned long long才可以,然后输出格式控制用%llu。。。原创 2016-09-08 11:09:03 · 362 阅读 · 0 评论 -
逆元模板
扩展欧几里得求逆元:int extgcd(int a, int b, int &x, int &y){ int d = a; if(b != 0) { d = extgcd(b, a%b, y, x); y -= (a / b) * x; } else x = 1, y = 0; return d;}int mod原创 2017-10-10 15:43:02 · 593 阅读 · 0 评论