数论
小蒟蒻yyb
Studnet
展开
-
【BZOJ1477】青蛙的约会(拓展欧几里得)
【BZOJ1477】青蛙的约会(拓展欧几里得)题面题目描述两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面。它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止。可是它们出发之前忘记了一件很重要的事情,既没有问清楚对方的特征,也没有约定见面的具体位置。不过青蛙们都是很乐观的,它们觉得只要一直朝着某个方向跳下去,总能碰到对方的。但是除非这两只青蛙在同一时间跳到同一点原创 2017-10-29 20:37:41 · 300 阅读 · 0 评论 -
【LightOJ1282】Leading and Trailing(数论)
题面Vjudge题解这题。。真的就是搞笑的 第二问,直接输出快速幂mod 1000mod \ 1000的值,要补前导零 第一问。。。就是搞笑的 依旧是快速幂 但是用double来算 每次中间值只要大于1000 直接除得小于1000就行了 不会就看代码把。。 这题就是搞笑的。。。#include<iostream>#include<cstdio>#include<cstdlib>原创 2018-01-09 10:52:16 · 197 阅读 · 0 评论 -
【LightOJ1259】Goldbach`s Conjecture(数论)
题面Vjudge T组询问,每组询问是一个偶数n 验证哥德巴赫猜想 回答n=a+b 且a,b(a<=b)是质数的方案个数题解筛出质数后直接暴力判断就行了 质数密度没有那么大,记得节约空间#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<cmath>#include<algori原创 2018-01-09 11:08:36 · 259 阅读 · 0 评论 -
【BZOJ1013】球形空间产生器(高斯消元)
题面Description 有一个球形空间产生器能够在n维空间中产生一个坚硬的球体。现在,你被困在了这个n维球体中,你只知道球 面上n+1个点的坐标,你需要以最快的速度确定这个n维球体的球心坐标,以便于摧毁这个球形空间产生器。Input 第一行是一个整数n(1<=N=10)。接下来的n+1行,每行有n个实数,表示球面上一点的n维坐标。每一个实数精确到小数点 后6位,且其绝对值都不超过2000原创 2018-01-09 11:31:15 · 164 阅读 · 0 评论 -
【BZOJ3994】约数个数和(莫比乌斯反演)
orz ZSY 巨佬根据玄学(我也不知道为什么)的公式 d(ij)=∑x|i∑y|j[gcd(x,y)==1]d(ij)=\sum_{x|i}\sum_{y|j}[gcd(x,y)==1]所以,所求等于 ∑i=1n∑j=1m∑u|i∑v|j[gcd(u,v)==1]\sum_{i=1}^n\sum_{j=1}^m\sum_{u|i}\sum_{v|j}[gcd(u,v)==1] 把枚举因数丢到原创 2018-01-10 16:53:57 · 294 阅读 · 0 评论 -
【BZOJ3884】上帝与集合的正确用法(欧拉定理,数论)
题面BZOJ题解我们有欧拉定理: 当b⊥pb \perp p时 ab≡ab%φ(p)(modp)a^b≡a^{b\%\varphi(p)}\pmod p 否则 当b≥φ(p)b≥\varphi(p)时 ab≡ab%φ(p)+φ(p)(modp)a^b≡a^{b\%\varphi(p)+\varphi(p)}\pmod p 这道题里面22的无穷次方显然会比φ(p)\varphi(p)大 所以原创 2018-01-19 19:52:49 · 238 阅读 · 0 评论 -
【BZOJ2186】沙拉公主的困惑(数论)
题面BZOJ题解考虑答案是啥 先假设n=mn=m 现在求的就是φ(m!)\varphi(m!) 但是现在n!n!是m!m!的若干倍 我们知道 gcd(x,y)=gcd(x+ky,y)gcd(x,y)=gcd(x+ky,y) 所以,相当于 每隔m!m!,答案增长的值都是φ(m!)\varphi(m!) 所以 我们可以得出 ans=n!m!φ(m!)ans=\fra原创 2018-01-20 11:54:47 · 239 阅读 · 0 评论 -
【BZOJ1416/1498】【NOI2006】神奇的口袋(数论,概率)
题面BZOJ1416 BZOJ1498 洛谷 题面都是图片形式是什么鬼。。题解考虑以下性质 1.x[1],x[2]..x[n]x[1],x[2]..x[n]等价于1,2,...n1,2,...n 证明: 假设取第kk步以前,所有的球的个数分别是a[1],a[2]..a[n]a[1],a[2]..a[n], 球的总数是sumsum 那么,第kk步取到颜色yy的概率是a[y]sum\fr原创 2018-04-02 09:48:19 · 337 阅读 · 0 评论 -
【BZOJ4555】求和(多种解法混合版本)
题面BZOJ 给定nnn,求 f(n)=∑i=0n∑j=0iS(i,j)×2j×(j!)f(n)=∑i=0n∑j=0iS(i,j)×2j×(j!)f(n)=\sum_{i=0}^{n}\sum_{j=0}^{i}S(i,j)\times 2^j \times (j!)n<=100000n<=100000n998244353998244353998244353取模。其中S...原创 2018-04-12 14:52:12 · 222 阅读 · 0 评论 -
【BZOJ2242】计算器(BSGS,快速幂)
题面BZOJ 洛谷 1、给定y、z、p,计算y^z mod p 的值;2、给定y、z、p,计算满足xy ≡z(mod p)的最小非负整数x;3、给定y、z、p,计算满足y^x ≡z(mod p)的最小非负整数x。题解第一问是裸的快速幂 第二问,因为PP是质数,所以求一下乘法逆元再乘zz就行了,特判yy是pp的倍数时无解 第三问,bsgsbsgs模板洛谷上的时间: map:652msmap:原创 2018-04-12 15:42:36 · 320 阅读 · 0 评论 -
【SPOJ】Power Modulo Inverted(拓展BSGS)
题面洛谷 求最小的yy 满足 k≡xy(mod z)k\equiv x^y(mod\ z)题解拓展BSGSBSGS模板题#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<cmath>#include<algorithm>#include<set>#include<map>#i原创 2018-04-12 20:45:07 · 247 阅读 · 0 评论 -
【BZOJ3122】随机数生成器(BSGS,数论)
题面BZOJ 洛谷 题解考虑一下递推式 发现一定可以写成一个 Xi+1=(X1+c)∗ai−cX_{i+1}=(X_1+c)*a^i-c的形式 直接暴力解一下 Xi+1+c=a(Xi+c)X_{i+1}+c=a(X_i+c) 解得c=ba−1c=\frac{b}{a-1} 这样子,相当于得到了一个k∗ax≡t+c(mod p)k*a^x\equiv t+c(mod\ p)这样的式子原创 2018-04-12 22:07:32 · 244 阅读 · 0 评论 -
【BZOJ5296】【CQOI2018】破解D-H协议(BSGS)
题面BZOJ 洛谷DescriptionDiffie-Hellman密钥交换协议是一种简单有效的密钥交换方法。它可以让通讯双方在没有事先约定密钥(密码)的情况下 通过不安全的信道(可能被窃听)建立一个安全的密钥K,用于加密之后的通讯内容。 假定通讯双方名为Alice和Bob,协议的工作过程描述如下(其中mod表示取模运算): 1.协议规定一个固定的质数P,以及模P的一个原根g。P和g的数值都原创 2018-04-21 08:32:28 · 179 阅读 · 0 评论 -
【BZOJ4031】小Z的房间(矩阵树定理)
题面BZOJ 洛谷Description你突然有了一个大房子,房子里面有一些房间。事实上,你的房子可以看做是一个包含n*m个格子的格状矩形,每个格子是一个房间或者是一个柱子。在一开始的时候,相邻的格子之间都有墙隔着。 你想要打通一些相邻房间的墙,使得所有房间能够互相到达。在此过程中,你不能把房子给打穿,或者打通柱子(以及柱子旁边的墙)。同时,你不希望在房子中有小偷的时候会很难抓,所以你希望任意两原创 2018-04-21 09:41:14 · 200 阅读 · 0 评论 -
【BZOJ5297】【CQOI2018】社交网络(矩阵树定理)
题面BZOJ 洛谷Description当今社会,在社交网络上看朋友的消息已经成为许多人生活的一部分。通常,一个用户在社交网络上发布一条消息(例如微博、状态、Tweet等)后,他的好友们也可以看见这条消息,并可能转发。转发的消息还可以继续被人转发,进而扩散到整个社交网络中。在一个实验性的小规模社交网络中我们发现,有时一条热门消息最终会被所有人转发。为了研究这一现象发生的过程,我们希望计算一条消息所原创 2018-04-21 10:18:34 · 281 阅读 · 0 评论 -
【LightOJ1336】Sigma Function(数论)
题面Vjudge 求和运算是一种有趣的操作,它来源于古希腊字母σ,现在我们来求一个数字的所有因子之和。例如σ(24)=1+2+3+4+6+8+12+24=60.对于小的数字求和是非常的简单,但是对于大数字求和就比较困难了。现在给你一个n,你需要求出有多少个数字的σ是偶数。 注:一个数字的σ指这个数的所有因子之和题解现在观察一下数的因子和的奇偶性 如果这个数是一个奇数 那么,它的原创 2018-01-09 09:51:29 · 361 阅读 · 0 评论 -
【BZOJ3930】选数(莫比乌斯反演,杜教筛)
题面给定n,K,L,Rn,K,L,R 问从L~RL~R中选出nn个数,使得他们gcd=Kgcd=K的方案数题解首先就把区间缩小一下 全部缩小KK倍,不能直接除,原创 2018-01-17 16:51:56 · 294 阅读 · 0 评论 -
【BZOJ4652】循环之美(莫比乌斯反演,杜教筛)
题解到底在求什么呢。。。 首先不管他KK进制的问题啦,真是烦死啦所以,相当于有一个分数ij\frac{i}{j} 因为值要不相等 所以有i⊥ji \perp j,也就是gcd(i,j)=1gcd(i,j)=1现在考虑KK进制 先从熟悉的1010进制入手 如果一个最简分数是纯循环小数 我们知道,他的分母里面不含2,52,5 而且,巧极了10=2∗510=2*5 于是乎,YYYY一下原创 2018-01-17 10:01:41 · 387 阅读 · 0 评论 -
【Luogu1414】又是毕业季II(数论)
题面题目背景“叮铃铃铃”,随着高考最后一科结考铃声的敲响,三年青春时光顿时凝固于此刻。毕业的欣喜怎敌那离别的不舍,憧憬着未来仍毋忘逝去的歌。1000多个日夜的欢笑和泪水,全凝聚在毕业晚会上,相信,这一定是一生最难忘的时刻! 题目描述彩排了一次,老师不太满意。当然啦,取每位同学的号数来找最大公约数显然不太合理。于是老师给每位同学评了一个能力值。于是现在问题变为,从n个学生中挑出k个人使得他们的默契程原创 2017-11-07 14:37:17 · 349 阅读 · 0 评论 -
【Luogu1876】开灯
题面题目描述首先所有的灯都是关的(注意是关!),编号为1的人走过来,把是一的倍数的灯全部打开,编号为二的的把是二的倍数的灯全部关上,编号为3的人又把是三的倍数的灯开的关上,关的开起来……直到第N个人为止。给定N,求N轮之后,还有哪几盏是开着的。输入输出格式输入格式:一个数N,表示灯的个数和操作的轮数输出格式:若干数,表示开着的电灯编号说明1<=N<=2^40题解凭什么这道题目是入门难度!!!! 就原创 2017-11-07 15:07:24 · 252 阅读 · 0 评论 -
【Luogu2759】奇怪的函数(数论)
题面题目描述使得 xxx^x达到或超过 n 位数字的最小正整数 x 是多少?输入输出格式输入格式:一个正整数 n输出格式:使得 xxx^xxx 达到 n 位数字的最小正整数 x输入输出样例输入样例#1:11输出样例#1:10说明n<=2000000000题解简单题。。。。 数学题。。。。 位数−1=logxx10=xlogx10-1=log_{10}^{x^x}=xlog_{10}^x 直接二原创 2017-11-07 16:51:31 · 406 阅读 · 0 评论 -
斐波那契数列的鬼畜的性质
斐波那契数列的鬼畜的性质斐波那契数列定理1gcd(f[i],f[i+1])=1gcd(f[i],f[i+1])=1 利用辗转相减法 证明: gcd(f[i],f[i+1])gcd(f[i],f[i+1]) =gcd(f[i+1]−f[i],f[i])=gcd(f[i+1]-f[i],f[i]) =gcd(f[i−1],f[i])=gcd(f[i-1],f[i]) =....=....原创 2017-11-07 15:55:38 · 525 阅读 · 0 评论 -
【Luogu3807】【模板】卢卡斯定理(数论)
题目描述给定n,m,p(1≤n,m,p≤105)n,m,p(1≤n,m,p≤10^5)求 Cmn+mmodpC_{n+m}^m mod p保证PP为primeprime CC表示组合数。一个测试点内包含多组数据。输入输出格式输入格式:第一行一个整数T(T≤10)T(T≤10),表示数据组数第二行开始共TT行,每行三个数nmpn m p,意义如上输出格式:共TT行,每行一个整数表示答案。输入输出样例原创 2017-11-08 19:13:26 · 261 阅读 · 0 评论 -
【BZOJ1968】约数研究(数论)
题面BZOJ链接(题目是图片形式的)题解傻逼题 NOIPNOIP T1T1难度 不会做的话您可以退役#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<cmath>#include<algorithm>#include<set>#include<map>#include<vect原创 2017-11-04 17:53:40 · 267 阅读 · 0 评论 -
【BZOJ1257】余数之和(数论分块,暴力)
题解Description给出正整数n和k,计算j(n, k)=k mod 1 + k mod 2 + k mod 3 + … + k mod n的值,其中k mod i表示k除以i的余数。例如j(5, 3)=3 mod 1 + 3 mod 2 + 3 mod 3 + 3 mod 4 + 3 mod 5=0+1+0+3+3=7Input输入仅一行,包含两个整数n, k。Output输出仅一行,即j(原创 2017-12-19 20:29:56 · 253 阅读 · 0 评论 -
【BZOJ4407】于神之怒加强版(莫比乌斯反演)
题面BZOJ 求: ∑i=1n∑j=1mgcd(i,j)k\sum_{i=1}^n\sum_{j=1}^mgcd(i,j)^k题解根据惯用套路 把公约数提出来 ∑d=1ndk∑i=1n∑j=1m[gcd(i,j)==d]\sum_{d=1}^nd^k\sum_{i=1}^n\sum_{j=1}^m[gcd(i,j)==d] 再提一次 ∑d=1ndk∑i=1n/d∑j=1m/d[gcd(i原创 2018-01-11 08:42:37 · 265 阅读 · 0 评论 -
【BZOJ4816】数字表格(莫比乌斯反演)
题面BZOJ 求 ∏i=1n∏j=1mf[gcd(i,j)]\prod_{i=1}^n\prod_{j=1}^mf[gcd(i,j)]题解忽然不知道这个要怎么表示。。。 就写成这样吧。。 ∏d=1n∏i=1n∏j=1mif(gcd(i,j)==d)f[gcd(i,j)]\prod_{d=1}^n\prod_{i=1}^n\prod_{j=1}^mif(gcd(i,j)==d)f[gcd(i,原创 2018-01-12 09:24:55 · 235 阅读 · 0 评论 -
【BZOJ4869】相逢是问候(线段树,欧拉定理)
题面BZOJ题解根据欧拉定理递归计算(类似上帝与集合的正确用法) 所以我们可以用线段树维护区间最少的被更新的多少次 如果超过了φ\varphi的限制 就不用再计算了 如果需要计算就每次暴力算 这样的复杂度O(nlog2)O(nlog^2)#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#incl原创 2018-01-22 17:26:44 · 223 阅读 · 0 评论 -
【BZOJ2820】YY的GCD(莫比乌斯反演)
题面讨厌权限题!!!提供洛谷题面题解单次询问O(n)O(n)是做过的一模一样的题目 但是现在很显然不行了, 于是继续推 ans=∑d=1n[d_is_prime]∑i=1n/d[nid][mid]ans=\sum_{d=1}^n[d\_is\_prime]\sum_{i=1}^{n/d}[\frac{n}{id}][\frac{m}{id}] 老套路了 令T=idT=id ans=∑T=原创 2018-01-15 12:35:07 · 296 阅读 · 0 评论 -
【BZOJ3944】Sum(杜教筛)
题面求∑i=1nμ(i)和∑i=1nϕ(i)\sum_{i=1}^n\mu(i)和\sum_{i=1}^n\phi(i) 范围:n<231n<2^{31} 令S(n)=∑i=1nμ(i)S(n)=\sum_{i=1}^n\mu(i) 随便找个函数gg和μ\mu做狄利克雷卷积 (g∗μ)(i)=∑d|iμ(d)g(id)(g*\mu)(i)=\sum_{d|i}\mu(d)g(\frac{i}原创 2018-01-16 11:59:12 · 310 阅读 · 0 评论 -
【BZOJ4916】神犇和蒟蒻(杜教筛)
题面BZOJ 求 ∑i=1nμ(i2) 和 ∑i=1nϕ(i2)\sum_{i=1}^n\mu(i^2)\ \ 和\ \sum_{i=1}^n\phi(i^2) 其中n<=109n<=10^9题解第一问 搞笑的 不会做? 算了。。 还是说一下: 想想μ(x)\mu(x)是怎么算的??? 既然是i2i^2,每个因数的个数一定不会是11 所以除了μ(1)\mu(1)外一定都是00原创 2018-01-16 16:30:22 · 292 阅读 · 0 评论 -
【Luogu3768】简单的数学题(莫比乌斯反演,杜教筛)
题面洛谷 求∑i=1n∑j=1nijgcd(i,j)求\sum_{i=1}^n\sum_{j=1}^nijgcd(i,j) n=109 n题解很明显的把gcdgcd提出来 ∑d=1nd∑i=1n∑j=1nij[gcd(i,j)==d]\sum_{d=1}^nd\sum_{i=1}^n\sum_{j=1}^nij[gcd(i,j)==d] 习惯性的提出来 ∑d=1nd3∑i=1原创 2018-01-16 19:11:55 · 382 阅读 · 0 评论 -
【BZOJ4894】天赋(矩阵树定理)
题面BZOJDescription小明有许多潜在的天赋,他希望学习这些天赋来变得更强。正如许多游戏中一样,小明也有n种潜在的天赋,但有 一些天赋必须是要有前置天赋才能够学习得到的。也就是说,有一些天赋必须是要在学习了另一个天赋的条件下才 能学习的。比如,要想学会”开炮”,必须先学会”开枪”。一项天赋可能有多个前置天赋,但只需习得其中一个就可 以学习这一项天赋。上帝不想为难小明,于是小明天生就已原创 2018-04-21 10:53:48 · 358 阅读 · 0 评论