数论
文章平均质量分 85
路人丙丙
这个作者很懒,什么都没留下…
展开
-
zoj3435 莫比乌斯反演
传送门题意:给定点(x,y,z)与(1,1,1)确定一个长方体,长方体边上及内部总共有x*y*z个点,问从(1,1,1)总共能看到多少个点思路:点的类型分为三种:(1)在长方体内部、(2)在长方体面上(不包括与(1,1,1)共线的点)、(3)与(1,1,1)共线的点;如果我们把每个坐标都减1,可以发现:(1)如果坐标里有两个0,那么只有另一个数为1才可以看见、(2)如果坐标里有一个0,那么原创 2017-08-13 10:43:03 · 363 阅读 · 0 评论 -
CodeForces - 697E 找递推、快速幂
http://codeforces.com/problemset/problem/697/E E. PLEASE time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard output As we all know Barney’s job is “P原创 2018-03-18 13:51:07 · 297 阅读 · 0 评论 -
poj 1222 高斯消元入门 开关问题
传送门题意有5*6=30个的灯,每次拨动某个灯的开关,那么这个灯的上下左右的灯以及它本身的状态会发生变化,现在给出初始状态,要求也输出一个5*6的矩阵,1表示这个灯的开关被操作过,0表示没有,问能使灯全灭的操作是怎么样的思路首先一定要清楚一点:如果一个开关按动两次,那么就相当于没有操作假设初始状态是全灭的,我们的目标状态是到题目中的初始状态,那么相同的操作是可以将题目中原创 2018-01-29 16:57:40 · 262 阅读 · 0 评论 -
求n对小于等于它的数取余的和
即求:我们可以先对原式转化一下:,在i的一定区间上会保持一个固定的值比如,我们求一下13对小于等于它的数相除后取地板:13、6、4、3、2、2、1、1、1、1、1、1、1在这里[5,6]上都是一个固定值2,[7,13]上都是一个固定的值1,在这些区间上是等差数列所以我们只需要找到每个区间的首项和末项就可以求出来,那么也就很容易得到了仔细想一想可以发现,每个区间的最后一项是,把这原创 2018-01-27 11:40:17 · 428 阅读 · 0 评论 -
hdu5114 Collision扩展欧几里得
传送门题意:给出俩球的初始坐标(x1,y1)、(x2,y2),两个球都是往(1,1)方向运动,如果遇到墙壁,两个球会满足反射定律反射,问最后两球相遇的坐标思路:设相遇经历的时间为t1、如果两球的初始坐标相同,那么相遇时间t=02、如果两球的初始横坐标相同,那么在x方向两球是相对静止的,所以只需要考虑y方向,假设y1\frac{y1+y2}{2}3、如果两球的初始纵坐标相同,同理在y方向两球是相对静原创 2018-01-17 20:11:05 · 229 阅读 · 0 评论 -
hdu1695 gcd 莫比乌斯反演
传送门题意:从1-m中选取x,1-n中选取y,使得gcd(x,y)=k,求选取方法数思路:利用莫比乌斯反演,题目等价于从1-m/k中选取x,1-n/k中选取y,使得gcd(x,y)=1,求选取方法数,我们设f(k)=使gcd(x,y)等于k的选取数F(k)=使gcd(x,y)等于k的倍数的选取数我们可以容易得出F(x)=(m/x)*(n/x)根据莫比乌斯反演公式f(k)=∑原创 2017-08-10 20:42:36 · 410 阅读 · 2 评论 -
hdu5514 容斥或数论
传送门题意:一排编号0-m-1的石头围成一个圈,有编号1-n的青蛙每次可以跳a[i]步,问可以跳到的石头的编号和是多少思路:由于石头是个圈,不难发现每个青蛙最少可以跳的步数差为gcd(a[i],m),也就是说一个每次跳a[i]步的青蛙能跳到gcd(a[i],m)的及其倍数的编号的石头上,我们不难想到用容斥...用枚举子集做了半天,也wa了半天...枚举子集会爆long long,所以不可取原创 2018-01-15 10:41:42 · 241 阅读 · 0 评论 -
BZOJ 1951 lucas定理 中国剩余定理
传送门照旧记录一下,不然担心以后碰到类似的题依旧不知道怎么做……题意:求G^(sigma(C(N,i)))%MOD,MOD=999911659,i是N的因子(包括1和本身),首先幂次非常大,所以先降幂次,即sigma(C(N,i))%(MOD-1)+(MOD-1),那么关键就是求sigma(C(N,i))%(MOD-1),我们可以遍历能整除N的数,但999911658是一个合数,它可以分解原创 2017-08-05 20:28:13 · 361 阅读 · 0 评论 -
hdu4373 lucas定理+中国剩余定理
传送门想做好这个题真的真的好不容易啊T T题意:定义两种循环,第一种循环是直接从1-n,第二种循环是从上一层循环的数字到n,给出两种类型的循环,求最后总循环次数,再对364875103取模思路:计算循环次数,第一种循环就不用说了,第二种循环是通过找规律归纳出来结果……第二种循环的开始一定是第一种循环,若是第一种循环里只有一个第二种循环即for(a[0]=0;a[0]原创 2017-08-05 11:02:17 · 346 阅读 · 0 评论 -
poj1845 逆元 因子和
传送门主要目的还是记录一下,学习了学长博客http://blog.csdn.net/acdreamers/article/details/8220787,写的比我清楚很多……题意:求a^b的因子和对9901取余 思路:一个数的因子和求法:对n素数分解,n=p1^a1*p2^a2*...*pk^ak因子和=(1+p1+p1^2+...+p1^a1)*(1+p2+p2^2+...+p2原创 2017-08-02 20:16:38 · 245 阅读 · 0 评论 -
bzoj2301 莫比乌斯反演
传送门题意:给出a、b、c、d、k,求在[a,b]内取一个数x,在[c,d]内取一个数y,使得gcd(x,y)=k的方法数思路:可以说是hdu1695的升级版了,定义一个solve函数,作用是求[1,m]内取x,[1,n]内取y,使得gcd(x,y)=1的方法数,根据hdu1695的思路,则f(1)=F(1)*mu(1)+...+F(min(x,y))*mu(min(x,y)),但如果还是原创 2017-08-12 17:03:18 · 247 阅读 · 0 评论 -
poj3904 容斥原理或莫比乌斯反演
传送门题意:从给出的n个数中选取4个最大公因数为1的四元组的选取数思路:感觉容斥问题都有一个很相似的地方,就是要从问题的逆方向来考虑,所谓正难则反,这也是思维中一个很重要的地方。我们来考虑这个逆问题,便是选取4个最大公因数不为1的四元组,总选取方式为C(n,4)那么也就是这四个数的最大公因数里至少有一个素数,换句话说,至少有一个相同的素数能够将这四个数整除,如果这n个数中有m个数是这个素数原创 2017-08-08 15:40:15 · 397 阅读 · 0 评论 -
hdu3944 lucas定理+阶乘预处理
传送门题意: 给出两个值n、m,求从杨辉三角上从上到下,只能向下或向右下,到位置(n,m)的和的最小值思路: 画出杨辉三角很容易就可以发现,我们逆着看,若m端,若m>n/2,则最小和在这个数一直向上到最上时再左上到最顶端,由于组合数的性质C(n,m)=C(n,n-m),所以我们只看m>n/2的时候,那么sum=C(n,m)+C(n-1,m)+C(n-2,m)..+C(m,m)+原创 2017-08-03 20:09:31 · 400 阅读 · 0 评论 -
nefu628 组合数取模,模不是素数的情况
传送门题意:求C(m+n-2,m-1)%p,其中1思路:数据范围并不是很大,但关键是p不一定是素数,所以传统求逆元的方法如费马小定理或者扩展欧几里得都不适用了,C(m+n-2,m-1)=(m+n-2)!/((n-1)!*(m-1)!),可以把这个数暴力分解素因子,计算其中包含的素因子个数,然后再用快速幂计算,累乘就得到了最后的结果。十分暴力。#include#include#inc原创 2017-08-03 15:55:28 · 1162 阅读 · 0 评论 -
LightOJ 1236 Pairs froming LCM 素因子分解
题意给定一个数nnn,问在小于等于nnn的数中,有多少数对(a,b)满足lcm(a,b)=nlcm(a,b)=nlcm(a,b)=n,其中a<ba<balcm=nlcm=nlcm=n的数对中的两个数一定是n的因子 我们从因子的角度来看LCM: 对n进行素因子分解 n=pa11pa22pa33...pakkn=p1a1p2a2p3a3...pkakn=p_1^{a_1}p_2^...原创 2018-04-26 15:18:45 · 231 阅读 · 0 评论