数论
文章平均质量分 67
ssl_fuyang
ヾ(◍°∇°◍)ノ゙
展开
-
青蛙的约会【同余】【扩欧】
>Linkluogu P1516>Description求关于ttt的同余方程 x+tn≡y+tm(modL)x+tn\equiv y+tm(modL)x+tn≡y+tm(modL)>解题思路把常数和未知数分开:tn−tm≡y−x(modL)tn-tm\equiv y-x(modL)tn−tm≡y−x(modL)然后同余转换成等式:tn−tm+sL=y−xtn-tm+sL=y-xtn−tm+sL=y−xt(n−m)+sL=y−xt(n-m)+sL=y-xt(n−m)+s原创 2022-02-24 19:20:21 · 67 阅读 · 0 评论 -
约数之和【数论】【扩欧】
>Linkybtoj约数之和>Description求 ABA^BAB 所有约数之和模 990199019901>解题思路可以把 AAA 质因数分解为>代码#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#define LL long longusing namespace std;const LL Mo原创 2021-12-18 17:25:34 · 120 阅读 · 0 评论 -
[NOIP2012 提高组] 同余方程【扩欧】
>Linkluogu P1082>Description给出 a,ba,ba,b,求 ax≡1(modb)ax≡1(modb)ax≡1(modb) 中 xxx 的最小值>解题思路题意转换,求 ax+by=1ax+by=1ax+by=1 ,xxx 的最小值由这个式子可得,111 是 gcd(a,b)gcd(a,b)gcd(a,b) 的倍数,那么 gcd(a,b)gcd(a,b)gcd(a,b) 就一定为 111所以式子变成 ax+by=gcd(a,b)ax+by=gcd(a原创 2021-12-18 17:14:23 · 179 阅读 · 0 评论 -
[UVA10140] Prime Distance / 质数距离【欧拉筛】
>LinkUVA 10140ybtoj质数距离>Description给出若干个询问,询问 [l,r][l,r][l,r] 中相邻两个质数之间最大值和最小值l,r∈[1,231−1],r−l≤107l,r\in [1,2^{31}-1],r-l\le 10^7l,r∈[1,231−1],r−l≤107>解题思路考虑到一个合数拥有一个最小质数,这个质数肯定在 r\sqrt rr 里面,所以我们只要根据 r\sqrt rr 里的质数筛一遍 [l,r][l,r][l,r]原创 2021-12-15 10:15:04 · 101 阅读 · 0 评论 -
线性筛素数(欧拉筛)【模板】
>Linkluogu P3383>解题思路在埃氏筛的基础上,考虑到一个合数拥有一个它的最小质数,我们只让这个最小质数筛到它一次就行了因为每个数只被筛到一次,所以时间复杂度为 O(n)O(n)O(n)>代码#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#define N 100000010using namespace原创 2021-12-15 10:04:40 · 498 阅读 · 0 评论 -
ABC181D Hachi / Lyrith -迷宮リリス-【模拟】【数学】
>LinkABC181Dluogu T207968>Description问是否有一种方案,将十进制数 xxx 重排后,新的数为 8 的倍数x≤10100000x\le 10^{100000}x≤10100000>解题思路把十进制下每一位上的数提出来看,设 xxx 拆出来为 an...a1a_n...a_1an...a1那 x=an∗10n−1+...+a4∗1000+a3∗100+a2∗10+a1x=a_n*10^{n-1}+...+a_4*1000+a_3*10原创 2021-11-09 20:31:07 · 246 阅读 · 0 评论 -
乘法逆元 2【逆元】【数学】
>Linkluogu P5431>Description给定 n,k,Mod,an, k, Mod, an,k,Mod,a数组,求出∑i=1nkiai\sum_{i=1}^{n}\frac{k^i}{a_i}i=1∑naiki答案对ModModMod取模>解题思路对分数进行通分,设s=∏ais=\prod a_is=∏ai,我们就可以得到∑i=1nki∗sais=1s∗∑i=1nki∗sai\sum_{i=1}^{n}\frac{k^i*\frac{s}{a_i原创 2021-10-21 09:02:18 · 179 阅读 · 0 评论 -
巡回的梦魇之神喜欢数列【数学】
>Linkluogu T201842>Description1≤T≤105,1≤n,k≤5×1061\leq T\leq 10^5,1\leq n,k\leq 5\times 10^61≤T≤105,1≤n,k≤5×106>解题思路推推式子就可以发现an=kn(1+k)(1+k2)...(1+kn−1)a_n=\frac{k}{n}(1+k)(1+\frac k 2)...(1+\frac k {n-1})an=nk(1+k)(1+2k)...(1+n−1k)然原创 2021-10-07 21:32:37 · 83 阅读 · 0 评论 -
高尚的战斗之神想要取模【结论】
>Linkluogu T201841>Description开始你拥有一个数字 xxx,然后螳螂领主会给你一个区间 [l,r][l,r][l,r],开始有一个数字 i=ri=ri=r ,然后每次另 x=x%i ,然后让 i=i−1i=i−1i=i−1,直到 i<li<li<l 为止。求每次操作后 xxx 的和。1≤x≤109,1≤l≤r≤1091≤x≤10^9,1≤l≤r≤10^91≤x≤109,1≤l≤r≤109>解题思路手玩一下就可以发现,x=x%r原创 2021-10-07 21:26:15 · 61 阅读 · 0 评论 -
友谊序列【结论(异或)】
>Linkluogu U137911>Description对于100%的数据,n<=2e5,v<=1e9,T<=3。>解题思路赛时想了好久才想出来QAQ,然后一不小心输入了n后面直接return了,然后就RE了QAQ好 粗心啊我们手动异或下就会发现如果 a⊕b=ca⊕b=ca⊕b=c,那么就会有 c⊕b=ac⊕b=ac⊕b=a 和 c⊕a=bc⊕a=bc⊕a=b按照题目将数分成两类,数互不相同且都是正整数(如果有0的话,0异或任何数等于任何数,那原创 2021-09-28 21:12:31 · 93 阅读 · 0 评论 -
序列区间【暴力】【数学】
>Linkluogu U137902>Description这里用mina表示数组中的最小值,用maxa表示数组中的最大值。对于前30%的测试点,n<=10,maxa<=10。对于前60%的测试点,n<=100。对于前80%的测试点,mina>=2。对于100%的测试点,n<=2e5,k<=1e5,maxa<=1e8,mina>=1。>解题思路麻了,比赛的时候一直在推式子,方向直接错了QAQ暴力,先固定一个左端点,然原创 2021-09-28 21:03:09 · 148 阅读 · 0 评论 -
年会小游戏【数论】【DFS】
>Linkluogu U137970>Description小A在公司年会上组织大家玩一个有奖小游戏,假设有n个人参加,随机选人顺次编号从1到n,然后每个人可以找可 以被自己整除的编号,比如6可以整除自己和1 2 3四个人,所以他能获得4分,得分最多的人赢得奖励,如果分数相 同,则编号最小的获胜。根据输入的n,输出获奖者的编号以及分数。对于100%的数据,1≤n≤1e18,1≤T≤1001≤n≤1e18,1≤T≤1001≤n≤1e18,1≤T≤100>解题思路其实就是反素数原创 2021-09-27 20:56:25 · 471 阅读 · 0 评论 -
[POI2001][HAOI2007]反素数【数论】【DFS】
>Linkluogu P1463>Description1≤n≤1091≤n≤10^91≤n≤109>解题思路题目大意:求在[1,n][1,n][1,n]内的一个数,这个数的约数最多且尽可能小我们知道xxx可以表示为 x=∏pikix=\prod p_i^{k_i}x=∏piki,pip_ipi都为质数那xxx的约数个数为 g(x)=∏(ki+1)g(x)=\prod (k_i+1)g(x)=∏(ki+1)对于所有的 pip_ipi(kik_iki可以为0原创 2021-09-27 20:51:34 · 176 阅读 · 0 评论 -
超级蚯蚓【模拟】【数学】
>Linkluogu U138098>Description生物学家们利用基因工程制造了一种超级蚯蚓,与原品种可以一分为二的特性相反,我们将两条这种超级蚯蚓的头 或尾端接触,他们的头或尾会连接起来。实验室中现在有n条这样的超级蚯蚓,现在重复n次以下操作:随机抽出两条超级蚯蚓,使它们的头或尾接触。可以 想象,这样n次之后將不再有条状蚯蚓,n条超级蚯蚓连接成了一些环。那么有多大概率刚好所有这些超级蚯蚓只形成了一个环?>解题思路我们知道让蚯蚓只形成一个环,只用保证每次操作的时候不原创 2021-09-26 21:35:35 · 335 阅读 · 0 评论 -
循环数组【离散化】【容斥】【数学】
>Linkybtoj冲刺NOIP2021模拟赛B组Day4 T2>Description一个长度为n∗kn*kn∗k的数组,由长度为nnn的数组AAA复制kkk次组成定义这个数组的一个区间的权值为它里面不同的数的个数,求出对于这个数组的每个非空区间的权值之和。答案对1e9+71e9+71e9+7取模n≤105,k≤109,ai≤109n≤10^5,k≤10^9,a_i≤10^9n≤105,k≤109,ai≤109>解题思路做题总是想不到容斥然后不会写QAQ首先aia原创 2021-09-25 21:06:13 · 99 阅读 · 0 评论 -
统计集合【数学】
>Linkybtoj冲刺NOIP2021模拟赛B组Day4 T1>Description给定一个集合SSS,求集合SSS的所有非空子集中 最大值与最小值的差 的和,答案对1e9+71e9+71e9+7取模>解题思路麻了,最近刚学集合一眼就看出来了QAQ子集中只有最大值和最小值才能对答案产生贡献,所以考虑SSS中每个元素作为子集中的最大/小值对答案的贡献假设xxx为最大值,就找比它小的元素跟它凑成一个集合,贡献为:+++方案数∗x*x∗x。最小值反之>代码#in原创 2021-09-25 20:49:16 · 129 阅读 · 0 评论 -
Just Green Enough【数论】【模拟】
>Linkluogu P7410>Description给出一个N∗N(N≤500)N*N(N≤500)N∗N(N≤500)矩阵,问有多少个子矩阵,子矩阵里面的最小值刚好为100>解题思路我们可以O(n2)O(n^2)O(n2)枚举一个可能的子矩阵的右下角(x,y)(x,y)(x,y),看看(x,y)(x,y)(x,y)左上方可以扩展多少个合法的矩阵(这样不会重复计算答案)假设不存在最小值刚好为100这个条件,我们先求最小值大于等于100的子矩阵那我们从第xxx层枚举到第原创 2021-08-19 19:49:50 · 157 阅读 · 0 评论 -
Sum of Distances P【BFS】【数论】【容斥】
>Linkluogu P7293>Description∑Ni≤105,∑Mi≤2⋅105∑N_i≤10^5, ∑M_i≤2⋅10^5∑Ni≤105,∑Mi≤2⋅105>解题思路观察一个KKK元组的点,假设其中aia_iai在第iii个图中“先到达”了,那它可以在与它相连的一条边上跳来跳去,“等”其他图的点到达因为等的时间只能为偶数,所以(1,1,...,1)(1,1,...,1)(1,1,...,1)能否到达这个KKK元组的点,就与每个图中1到达aia_iai的原创 2021-08-18 14:43:55 · 140 阅读 · 0 评论 -
卢卡斯定理/Lucas 定理【模板】
>Linkluogu P3807>解题思路早上打比赛不会写的时候去洛谷看了下lucas题解先咕着 还是得先改完比赛的题QAQ>代码#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#define LL long longusing namespace std;int T;LL p;LL power (LL a,原创 2021-08-13 15:33:58 · 170 阅读 · 0 评论 -
扩展中国剩余定理(EXCRT)【模板】
>Linkluogu P4777>Description求解一元线性同余方程组{x≡b1(moda1)......x≡bn(modan)\left\{\begin{matrix}x\equiv b_1(mod a_1)\\ ......\\ x\equiv b_n(mod a_n)\end{matrix}\right.⎩⎨⎧x≡b1(moda1)......x≡bn(modan)不保证aaa两两互质>解题思路由于模数不保证两两互质,所以我们就不能用中国剩余原创 2021-07-20 20:35:03 · 168 阅读 · 0 评论 -
公约数的和 / 最大公约数 / GCD SUM【欧拉函数】
>Linkluogu P1390jzoj 1349>Description//服了啊latex打不开,先放着明天再写吧QAQ给出nnn,求$$$$>解题思路#关于欧拉函数$$表示111 ~ n−1n-1n−1中与nnn互质的数的个数对于质数nnn,那么肯定=n−1=n-1=n−1>代码#include <iostream>#include <cstdio>#include <cstring>#include <原创 2021-07-19 21:56:36 · 315 阅读 · 0 评论 -
中国剩余定理(CRT)/曹冲养猪【模板】
>Link****>Description>解题思路(笔记参考Bat特白)#关于中国剩余定理孙子定理是中国古代求解一次同余式组(见同余)的方法。是数论中一个重要定理。又称中国余数定理。一元线性同余方程组问题最早可见于中国南北朝时期(公元5世纪)的数学著作《孙子算经》卷下第二十六题,叫做“物不知数”问题,原文如下:有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?即,一个整数除以三余二,除以五余三,除以七余二,求这个整数。 ——百度百科求解一元线原创 2021-07-18 21:56:57 · 188 阅读 · 0 评论 -
序列合并【堆】【数论】
>Linkybtoj序列合并luogu P1631>解题思路A和B是已经从小到大排好序的,但是如果将所有N2N^2N2个和放进堆再一个个推出堆顶,显然是不行的我们发现如下规律:A1+B1≤A1+B2≤…≤A1+BNA_1+B_1≤A_1+B_2≤…≤A_1+B_NA1+B1≤A1+B2≤…≤A1+BNA2+B1≤A2+B2≤…≤A2+BNA_2+B_1≤A_2+B_2≤…≤A_2+B_NA2+B1≤A2+B2≤…≤A2+BN………………………………AN原创 2021-07-05 11:42:48 · 152 阅读 · 0 评论 -
GDKOI数论学习(持更)
>前言因为今天的题目没有地方改,加上受zzl巨爷的影响,写了这篇学习小结>算术基本定理对于任意正整数NNN,有 N=p1c1∗p2c2∗...∗pncnN=p_1^{c_1}*p_2^{c_2}*...*p_n^{c_n}N=p1c1∗p2c2∗...∗pncn其中 pip_ipi 是质因数, cic_ici 是相对应的个数>欧拉函数φφ(p)φ(p)φ(p)为正整数ppp不同质因子的个数定义 φ(1)=1φ(1)=1φ(1)=1对于一个质数ppp,有原创 2021-01-27 21:45:57 · 128 阅读 · 2 评论 -
国王游戏【贪心】【数学】【高精度】
>Linkybtoj国王游戏>解题思路很显然一道贪心(但是我一开始贪错了==)我们设ai、bia_i、b_iai、bi为第iii个人左右手上的数,sis_isi为前iii个人所有人左手上数的乘积考虑邻位交换,第iii个人与第i+1i+1i+1个人交换位置则这两个位的最大值转换如下:max(si−1bi,si−1∗aibi+1)→max(si−1bi+1,si−1∗ai+1bi)max(\frac{s_{i-1}}{b_i},\frac{s_{i-1}*a_i}{b_{i+1原创 2021-01-09 11:54:27 · 273 阅读 · 1 评论 -
幼儿园数学题Ⅱ【矩阵乘法】【数学】
>Linkssl 2514>Description求序列 fn−f3−f4−f5−...−fn−3−fn−2=(n+4)(n−1)/2f_n-f_3-f_4-f_5-...-f_{n-3}-f_{n-2}=(n+4)(n-1)/2fn−f3−f4−f5−...−fn−3−fn−2=(n+4)(n−1)/2 中前nnn项之和其中 f1=f2=1f_1=f_2=1f1=f2=1>解题思路看到这个序列公式,我们首先把它给化简一下fn−f3−f4−f5−...−f原创 2020-12-19 11:19:27 · 137 阅读 · 1 评论 -
放置石子【数学】【斐波那契】
>Linkybtoj提高模拟赛A组Day7T1>Description有一个伪斐波那契数列,第000位规定为1,第111位为任意正整数ppp,要求求出当第aaa位为xxx时,第bbb位为多少,若无这种情况输出−1-1−1>解题思路比赛时打了快读快输痛失50分,至今还不知道为什么TT01234…值1p1+p1+2p2+3p常数项10112系数项00123通过列举可以得出,常数项与ppp的系数项原创 2020-11-27 21:15:04 · 80 阅读 · 0 评论 -
数组亦或【拆位】
>Linkybtoj提高模拟赛A组Day9T2>Description给出两个大小都为nnn的数组AAA、BBB,求CCC数组:Ck=∑i=1k∑j=1kAi⊕BjC_k=∑_{i=1}^k∑_{j=1}^kA_i⊕B_jCk=∑i=1k∑j=1kAi⊕BjCCC要对1e9+71e9+71e9+7取模>解题思路比赛n2n^2n2暴力50分异或相同为0,不同为1,只用考虑不同的做出的贡献,所以考虑拆位每枚举到一个kkk,记录当前AAA中每一位111和000的个原创 2020-11-27 20:53:01 · 165 阅读 · 0 评论 -
蚂蚁移动【数学】
>Linkybtoj提高模拟赛A组Day9T1>Description有一个[0,l][0,l][0,l]的尺子,上面有nnn只蚂蚁,给出每只蚂蚁的初始位置和移动方向,蚂蚁的移动规则如下:每个时间单位移动一格,当碰到其他蚂蚁或墙时立即调转方向要求输出第ttt个时间单位时,哪nnn个位置有蚂蚁,并按字典序输出这nnn个位置>解题思路每只蚂蚁撞到其他蚂蚁时立即调转方向,这个条件其实不用管它,因为每只蚂蚁都是没有区别的,调转方向相当于与撞到的那只蚂蚁调换一下身份一只蚂蚁一共会移原创 2020-11-27 20:31:44 · 311 阅读 · 0 评论 -
三角形【容斥】
>Linkluogu校测普及组T2>Description有三条线a,b,ca,b,ca,b,c,给定一个整数LLL,可以给a,b,ca,b,ca,b,c三条线分别加长,并且三条线总的加长量不超过LLL,问有多少种加长方案(包括不加长)使得a,b,ca,b,ca,b,c组成合法三角形>解题思路>代码#include <iostream>#include <cstdio>#include <cstring>#include &原创 2020-11-04 18:02:47 · 247 阅读 · 0 评论 -
卡片【数学】
>Link牛客1024普及T3>Description>解题思路>代码#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#define int long longusing namespace std;int a, m, b, n, k;int gcd (int A, int B){ if (!B) r原创 2020-10-29 18:20:11 · 140 阅读 · 1 评论 -
牛半仙的妹子gcd【数学】
>Link牛客1022普及T2>Description给出一个整数nnn,求出∑i=1n∑j=1n∑k=1ngcd(i,j,k)∑_{i=1}^{n}∑_{j=1}^{n}∑_{k=1}^{n}gcd(i,j,k)∑i=1n∑j=1n∑k=1ngcd(i,j,k)>解题思路数据有点水比赛的时候打了一个n3n^3n3的优化模拟都过了(我是菜鸡==)正解如下。将三个∑简化成两个,已知gcd(i,j,k)=gcd(gcd(i,j),k)gcd(i,j,k)=gcd(gcd原创 2020-10-26 19:08:21 · 241 阅读 · 0 评论 -
石子【数学】
>Link1024牛客普及T2>DescriptionAlice 和 Bob 从小就一起玩石子。有一天,他们又想愉快的玩一个石子游戏。一共有 n 堆石子,第 i 堆石子有 ai个,两人轮流操作。Alice 走先手,每个人每个回合只能对一堆石子进行操作,Alice 每次操作只能拿偶数个石子,Bob 每次操作只能拿奇数个石子, 每次操作至少拿走一个石子,直到一方无法进行任何操作,无法操作的人失败。假设Alice与Bob都是绝顶聪明的,如果 Alice 可以获胜,那么输出 YES,否则原创 2020-10-24 23:41:37 · 255 阅读 · 0 评论 -
变换【数学】
>Link牛客1020普及T4>Description给出一个序列A,其中第 i 个数字为 aia_iai ,你每次有两种操作:选择一个数字不变,将其他数字全部乘以 x。其中 x 为任意素数。选择一个数字不变,选出其他数字中的一个公共素因子 x,并将这些数字全部除以 x。请问:最少经过多少次操作,可以使得序列中所有数字全部相同。>解题思路考试的时候看到这道题,准备做20分但是不知道为什么挂了==。正解就跟我的20分思想差不多。玩一下这个游戏就可以发现,最终我们会原创 2020-10-21 18:10:23 · 257 阅读 · 0 评论 -
三角形(triangle)【数论】
>Description平面上有n个点,求出用这些点可以构成的三角形数。>Input第一行一个整数n。接下来n行,每行两个整数,表示点的坐标。>Output输出仅一个整数,表示所求答案。>Sample Input50 01 11 -1-1 -1-1 1>Sample Output8Data Constraint对于50%的数据,n<=300。对于100%的数据,n<=3000,坐标的绝对值不超过10^4,保证没有重合的点。原创 2020-09-15 15:49:19 · 540 阅读 · 0 评论 -
球形空间产生器【数论】【高斯消元】
>Description有一个球形空间产生器能够在 n 维空间中产生一个坚硬的球体。现在,你被困在了这个 n 维球体中,你只知道球面上 n+1 个点的坐标,你需要以最快的速度确定这个 n 维球体的球心坐标,以便于摧毁这个球形空间产生器。>Input第一行是一个整数 n (1<=N=10)。接下来的 n+1 行,每行有 n 个实数,表示球面上一点的 n 维坐标。每一个实数精确到小数点后 6 位,且其绝对值都不超过 20000。>Output有且只有一行,依次给出球心的 n原创 2020-09-01 20:17:31 · 203 阅读 · 0 评论 -
这是一棵树吗?【数论】
>DescriptionDD和QQ在玩游戏,DD在地上画了一棵树(图论中的树),然后他告诉QQ这棵树的度数序列。QQ马上说这不是一棵树。DD认为自己被QQ鄙视了,他们吵了起来。但DD随后发现自己算错了度数序列,QQ说的是对的。DD很奇怪为什么QQ反应得这么快。现在给出一个图的度数序列,你需要做的就是像QQ一样:判断这是否可能是一棵树的度数序列。>Input输入只有一行,首先给出一个整数 N,表示顶点个数,后面跟着 N 个整数,表示这个图的度数序列,每个数不超过 100。>Ou原创 2020-08-24 16:12:36 · 107 阅读 · 0 评论 -
失落【数论】
>Description出题人心情很失落,于是他直接告诉你让你求出一个集合中所有数所不能凑出来的最小的数是多少。>Input第一行一个整数 n。第二行 n 个整数 ai。>Output一个整数表示答案。>Sample Input35 1 2>Sample Output4对于 30% 的数据,满⾜ n≤15。对于 60% 的数据,满⾜ n≤1000。对于 100% 的数据,满⾜ n≤100000,1≤ai≤10^9。>解题思路比赛时暴原创 2020-08-23 21:10:57 · 137 阅读 · 0 评论 -
简单游戏(easygame)【数论】
>Description一天,小R准备找小h去游泳,当他找到小h时,发现小h正在痛苦地写着一列数,1,2,3,…n,于是就问小h痛苦的原因,小h告诉他,现在他要算1…n这些数里面,1出现的次数是多少,如n=11的时候,有1,10,11共出现4次1,现在给出n,你能快速给出答案么?>Input一行,一个整数n>Output一个整数,表示1…n中1出现的次数。对于30%的数据:n<=1000;对于100%的数据:n<=maxlongint;>解题思路一道原创 2020-08-21 18:00:12 · 254 阅读 · 0 评论 -
X-因子链(factor)【DP】【数论】
>Description给一个正整数X,一个长度为m的X-因子链是指这样一个序列:X0=1,X1,X2,。。。,Xm=X满足:Xi<Xi+1同时Xi|Xi+1(Xi+1能被Xi整除)要求X-因子链的最大长度Len和长度为Len的X-因子链的数量。>Input一个正整数X>Output一行,两个整数,分别表示最大长度和该长度链的种数。对于20%的数据:X<=20,000;对于100%的数据:X<=2^31;且保证因子链最大长度小于等于20;>解题原创 2020-08-20 15:31:06 · 321 阅读 · 0 评论