-------------数论-------------
文章平均质量分 84
Marcus-Bao
这个作者很懒,什么都没留下…
展开
-
CodeForces 359C Prime Number 数学+快速幂
C. Prime Number time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Simon has a prime number x and an array of n原创 2016-12-02 23:48:08 · 524 阅读 · 0 评论 -
qwb与支教 二分
题目链接 思路: 只要知道给定一个数如何求1-n 中有多少个是x的倍数or y的or z的就可以了,二分很好想. n/x+n/y+n/z-n/lcm(x,y)-lcm(x,z)-lcm(y,z)+lcm(x,lcm(y,z));原创 2017-06-02 12:21:24 · 485 阅读 · 0 评论 -
ZJCOJ qwb与神奇的序列 构造矩阵 or 递推
题目链接 比赛时我自己的做法是构造了矩阵..但是有个细节没想到...其实这个题比较简单的方法就是递推,很容易想到的写积个就得到F(n)=3*F(n-1)-1; 如果根据高中数学构造一个等比数列的话,即两边都+上k 得到 F(n)-1/2 为一个公比为3的等比数列. 可以得到F(n)=(3^n+1)*(x+y)/2 这里有个小技巧就是因为对1e8取模 2和1e8不互质没办法用逆元来求,原创 2017-06-02 23:44:04 · 529 阅读 · 0 评论 -
ZJCOJ qwb与小数 思维+快速幂
题目链接 这个题想到了就是裸的快速幂想不到就暴力TLE吧。。。。 我们求小数点后的数的求法就是 a%b*10/b,.. 两位的话就是 a%b*10%b*10/b 三位就是 a%b*10%b*10%b*10/b 化简看看就想到快速幂了... 当然笨菜鸡 只会orz. #include #define Ri(a) scanf("%d", &a) #define Rl(a) scanf("%l原创 2017-06-02 23:57:19 · 628 阅读 · 0 评论 -
837E Vasya's Function 数论
题目链接 题意: 定义F(a,0) = 0,F(a,b) = 1 + F(a,b - GCD(a,b)。给定 x 和 y ( 思路: 这个题乍一看我们好像都会做点,但是一直TLE啊. 难点在于如何快速的找到 b减掉了多少次gcd,使得新的a 和 b gcd 发生了改变,那么我们设 a = A*gcd(a,b) , b = B*gcd(a,b). 设原创 2017-08-17 23:42:23 · 375 阅读 · 0 评论 -
HDU - 5728 PowMod 欧拉函数(降幂)+数学推倒
题目链接 题意: k=∑mi=1φ(i∗n) mod 1000000007k=∑i=1mφ(i∗n) mod 1000000007 nn is a square-free number. φφ is the Euler's totient function. find: ans=kkkk...k mod pans=kkkk...k mod p T原创 2017-08-28 23:55:58 · 801 阅读 · 0 评论 -
hdu4704 && FZU1759 && HYSBZ3884 &&POJ3090 欧拉函数 || 欧拉降幂 ||费马小定理
hdu 4704 思路: 题目本身很简单,就是讲N划分为K个数的和有几种划分(1.....K)对应每一个K有 C(N-1,K-1)中划分法,一共就是 2^(N-1)。 但是发现N最多为 10^100000 哪怕快速幂也会爆. 方法1: 这也是我自己的一个做法吧,因为取模了,可以用欧拉降幂公式. PS : 1e9+7 是大素数,所以他的欧拉函数值为1e9原创 2017-08-27 17:23:17 · 640 阅读 · 0 评论 -
hdu 5812 Distance 数论+思维枚举
题目连接 题意:我们定义d(a,b)为a通过乘除最少的素数到达b。比如d(15,50)=3,15*2*5/3=50。 我们定义3个操作和一个空的集合s: I x表示在集合s里插入一个x,如果存在x,忽略这个操作。 D x表示在集合x里删除x,如果不存在x,忽略这个操作。 Q x找到最小的z集合里面存在一个y,使得d(x,y)=z。 数据范围: 总操作数q<=50000,x<=100原创 2017-09-16 19:04:57 · 331 阅读 · 0 评论 -
URAL - 1132 Square Root 二次剩余
题目链接题意: 让你计算 x*x = n (mod p ) n,p 互质.思路:二次剩余模板题。 欧拉判定准则: p 是一个奇素数, n,互质.上述方程有解当且仅当 n ^((p-1)/2)=1(mod p) 这样的n称为 %p意义下的完全平方数.至于怎么找这个a呢,采用随机算法,因为(1,p-1)中一半都是%p的非二次剩余.两种模板:#include <iost原创 2017-09-08 15:30:07 · 420 阅读 · 0 评论 -
bzoj 1485 有趣的数列 卡特兰数 + 数论 %p 不为质数
题目链接 我们称一个长度为2n的数列是有趣的,当且仅当该数列满足以下三个条件: (1)它是从1到2n共2n个整数的一个排列{ai}; (2)所有的奇数项满足a1 (3)任意相邻的两项a2i-1与a2i(1≤i≤n)满足奇数项小于偶数项,即:a2i-1 现在的任务是:对于给定的n,请求出有多少个不同的长度为2n的有趣的数列。因为最后的答案可能很大,所以只要求输出答案原创 2017-08-21 21:20:27 · 849 阅读 · 0 评论 -
uva 12716 GCD XOR (数论)枚举技巧(筛法) + 思维
uva 12716 题意:输入整数n(1<=n<=3e7),有多少对整数(a,b)满足:1<=b<=a<=n,且gcd(a,b)=a XOR b。例如:n=7时,有4对:(3,2),(5,4),(6,4),(7,6) 思维:确实是一个很不错的题目. 考虑到异或的性质,a xor b = c 那么 a xor c == b 一定成立. 那么对于上面这个题目我们可以枚举一个a和c,进而得到b原创 2017-10-09 00:10:53 · 357 阅读 · 0 评论 -
spoj FCDC - Factorial Modulo 数学质因数分解+思维
题目链接 题意 给出两个数a, b,问有多少i使得i!能被a整除,而不能被b整除。 数据 1 输入 2 3 输出 1 思路: 首先明确 A整除B 为 B%A==0 A能被B整除 A % B==0 我们很容西知道如果i!能整除一个数,那么(i+1)! (i+2)!...等都可以被整除. 那么我们就需要找到最小转载 2017-05-31 23:34:39 · 761 阅读 · 0 评论 -
POJ 3734 Blocks 组合数学
H - Blocks Time Limit:1000MS Memory Limit:65536KB 64bit IO Format:%lld & %llu Submit Status Practice POJ 3734 Description Panda has received an assignment of painting a l原创 2016-12-02 20:08:37 · 828 阅读 · 0 评论 -
POJ 3735 E - Training little cats POJ - 3735 矩阵构造
Facer's pet cat just gave birth to a brood of little cats. Having considered the health of those lovely cats, Facer decides to make the cats to do some exercises. Facer has well designed a set of move原创 2016-12-05 11:10:19 · 460 阅读 · 0 评论 -
FZU 1683 矩阵构造
已知 F(n)=3 * F(n-1)+2 * F(n-2)+7 * F(n-3),n>=3,其中F(0)=1,F(1)=3,F(2)=5,对于给定的每个n,输出F(0)+ F(1)+ …… + F(n) mod 2009。 Input 第一行是一整数m,代表总共有m个cases。 Output 对于每个case,输出一行。格式见样例,冒号后有一个空格。 Sample Input原创 2016-12-05 11:35:53 · 515 阅读 · 0 评论 -
HDOJ 1042 N! 大数
Given an integer N(0 ≤ N ≤ 10000), your task is to calculate N! InputOne N in one line, process to the end of file. OutputFor each N, output N! in one line. Sample Input 1 2 3 思路:没啥思路啊原创 2016-12-06 00:08:39 · 517 阅读 · 0 评论 -
大菲波数 hdu 1715
O - 大菲波数 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Status Description Fibonacci数列,定义如下: f(1)=f(2)=1 f(n)=f(n-1)+f(n-2) n>=3。 计算第n项Fibo原创 2016-11-23 19:38:44 · 546 阅读 · 0 评论 -
hdu 1575 TR A 矩阵快速幂
B - Tr A Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Status Description A为一个方阵,则Tr A表示A的迹(就是主对角线上各项的和),现要求Tr(A^k)%9973。 Input 数原创 2016-11-23 19:45:47 · 689 阅读 · 0 评论 -
nuoj 114 大数
数列A满足An = An-1 + An-2 + An-3, n >= 3 编写程序,给定A0, A1 和 A2, 计算A99 Input 输入包含多行数据 每行数据包含3个整数A0, A1, A2 (0 数据以EOF结束 Output 对于输入的每一行输出A99的值 Sample Input 1 1 1 Sample Output 6908744原创 2016-12-08 21:14:07 · 528 阅读 · 0 评论 -
poj 3233 Matrix Power Series 构造矩阵求等比矩阵和
Given a n × n matrix A and a positive integer k, find the sum S = A + A2 + A3 + … + Ak. Input The input contains exactly one test case. The first line of input contains three positive integers原创 2016-12-08 21:20:37 · 566 阅读 · 0 评论 -
CodeForces 185A. Plant(矩阵快速幂) 构造
Dwarfs have planted a very interesting plant, which is a triangle directed "upwards". This plant has an amusing feature. After one year a triangle plant directed "upwards" divides into four triangle p原创 2016-12-08 21:33:52 · 679 阅读 · 0 评论 -
URAL - 2070 Interesting Numbers 素数打表+数学定理
题目链接 题意: 在[L, R]之间 求: 1、x是个素数 2、因子个数是素数 同时满足两个条件,或者同时不满足两个条件的数的个数! 思路: 原本想从正面来做 可是10的12次方的表太大,打不过来, 我们可以从反面来想这个题,我们知道素数肯定都是满足的题意的,因为他的因子个数都是2, 那么不能让两个小朋友都同时满意的数就 是 该数为转载 2017-03-24 00:38:08 · 421 阅读 · 0 评论 -
UVA - 11426 GCD - Extreme (II) gcd思维+巧用欧拉函数
UVA - 11426 题意:求∑N−1i=1∑Nj=i+1gcd(i,j) \sum_{i=1}^{N-1}\sum_{j = i+1}^{N} gcd(i,j) (N<=4e6, 1 <= i < j <= N) 思路:因为有两个变的数i,j所以我们考虑固定一个,设为n.那么我们只要分别求出gcd(i,n) == d 的有多少对,那么贡献就是cnt*d. 上面这个和设为f(n)原创 2017-10-09 23:09:53 · 515 阅读 · 0 评论