随笔分类 -  数论

摘要:Jinsoo 用更相减损术写的 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #define int long long using namespace std; long long a,b,c; 阅读全文
posted @ 2021-07-28 20:42 Simex 阅读(57) 评论(0) 推荐(0)
摘要:Rose $O(\sqrt n)$也是可以接受的对吧 化简式子得$gcd(\frac,\frac)=1$和$gcd(\frac,\frac)=1$ 然后枚举$b_1$的因子就可以了 #include<iostream> #include<cstdio> #include<cstring> #incl 阅读全文
posted @ 2021-07-27 13:49 Simex 阅读(42) 评论(0) 推荐(0)
摘要:Lisa 这个$n!$不如先简简单单看成n,然后可知,$x>n$且$y>n$不如令$x=n+a,y=n+b$代入原式子,可知 \(a*b=n^2\) 那么a,b就是它的一对因子了 #include<iostream> #include<cstdio> #include<algorithm> #inc 阅读全文
posted @ 2021-07-27 13:38 Simex 阅读(60) 评论(0) 推荐(0)
摘要:Archie 拉格朗日插值法 知道了n个点的坐标,构造出一个n次多项式 然后求f(x) 公式 $ f_k=\sum_^ny_i\prod_{j=1\quad j\neq i }^n\frac$ 就行了 #include<iostream> #include<cstdio> #include<cstr 阅读全文
posted @ 2021-07-16 16:56 Simex 阅读(63) 评论(0) 推荐(0)
摘要:sczyyds sczyyds sczyyds I can't forget 你需要知道怎么求位数 #include<cmath> #include<cstdio> #include<iostream> #define ll long long using namespace std; ll n; 阅读全文
posted @ 2021-07-10 11:47 Simex 阅读(34) 评论(0) 推荐(0)
摘要:Aimee 很显然,对于每一行来讲,如果他们$gcd(x,y)$不为1,那么这个斜率一定出现过,所以说呢,需要排除 再结合一下对称性,可以知道对于每一列,可用的点对就是$\psi(x)$ 最后的答案就是$3+2*\sum_{i=2}^{n-1}\psi(i)$ 为什么是n-1呢,因为体委再(1,1) 阅读全文
posted @ 2021-06-20 17:24 Simex 阅读(92) 评论(0) 推荐(0)
摘要:我们需要的是解方程组 手解怎么解,挨个试呗 所以说呢,电脑也可以干一样的事情 从$x_1$到$x_n$一个一个得消去系数,然后倒着推回来 这里的问题很简单,不需要考虑自由元什么的 所以说搞就行了 在这里呢,我们把$1\rightarrow n$的系数依次搞成零 #include<iostream> 阅读全文
posted @ 2021-06-20 11:07 Simex 阅读(43) 评论(0) 推荐(0)
摘要:Aimee 只要不能写成$2N N \subseteq N*$就肯定有 #include<iostream> #include<cstdio> #include<cmath> #define int long long using namespace std; int n,m; int prime[ 阅读全文
posted @ 2021-02-24 11:22 Simex 阅读(51) 评论(0) 推荐(0)
摘要:Aimee 这是个dp?不过没有必要用dp 毕竟显然距离为2中间一定要经过一个点,那枚举中间点即可 之后显然假设一个点所有相邻的点的点权为集合$A= { a_1,a_2,a_3······a_k}$ 显然对于这个点,和就是$\sum_{1} \sum_{1} a_i*a_j |i!=j$ 那么这样上 阅读全文
posted @ 2021-02-21 20:54 Simex 阅读(93) 评论(0) 推荐(0)
摘要:Aimee 很简单的题目 记得long long 一个小小的分类讨论 #include<iostream> #include<cstdio> #include<algorithm> #define int long long using namespace std; int n,m,k,p; sig 阅读全文
posted @ 2020-12-04 22:07 Simex 阅读(123) 评论(0) 推荐(0)
摘要:Aimee 很简单的一个东西 除了我吧%写成了/之后 思路:如果如此,那么$m1^$中的每一个质因数一定比s中在最后一天的时候的指数大 就用这个做 #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #i 阅读全文
posted @ 2020-11-04 20:42 Simex 阅读(159) 评论(0) 推荐(0)
摘要:Aimee 模板题也 关于递推式的证明 #include<iostream> #include<cstdio> #define int long long using namespace std; int n,m; int inv[3000005]; signed main(){ scanf("%l 阅读全文
posted @ 2020-11-02 21:39 Simex 阅读(88) 评论(0) 推荐(0)
摘要:Miku 10的任何次方mod9都是1 所以说事实上就是把l到r加起来而已 然后等差数列求和即可 2在mod9意义下的逆元是5 #include<cstdio> #include<cstring> #include<algorithm> #include<iostream> using namesp 阅读全文
posted @ 2020-10-17 21:36 Simex 阅读(94) 评论(0) 推荐(0)
摘要:结论:对于n,答案为$F_{2^n}$ 呃,其实找规律也能找出来的 #include<iostream> #include<cstdio> #include<algorithm> #define ll long long using namespace std; long long t; long 阅读全文
posted @ 2020-10-05 15:42 Simex 阅读(81) 评论(0) 推荐(0)
摘要:Miku 显然两个数的公约数应该包括他们所有的公约数 那么问题就是求最大公约的所有公约数 那么怎么求呢?暴力求啊。 #include<iostream> #include<cstdio> #include<algorithm> #include<cmath> using namespace std; 阅读全文
posted @ 2020-10-03 17:30 Simex 阅读(1083) 评论(0) 推荐(0)
摘要:首先,%%%Kvein 快速幂 #include<iostream> #include<cstdio> using namespace std; long long tem=1; long long p; long long ans=1; long long b; long long k; long 阅读全文
posted @ 2020-08-31 21:12 Simex 阅读(116) 评论(0) 推荐(0)
摘要:链接:Miku 题目非常”简单“ 乍一看题,和和积积真讨厌 但是为什么要乘m^2呢 这时候我们拿起来了🖊,乘乘画画,一个答案呼之欲出 (看一下代码就懂了) #include<iostream> #include<cstdio> #include<algorithm> using namespace 阅读全文
posted @ 2020-07-19 19:35 Simex 阅读(143) 评论(0) 推荐(0)
摘要:链接:P1029 知道两个数的gcd和lcm,很容易知道gcd*lcm就是两数之积 然后我们从二开始枚举每一个因子,检查是不是乘积的因数,如果是,我们就检查这个数和 另一个数的gcd是不是相等就行了 1 #include<iostream> 2 3 using namespace std; 4 in 阅读全文
posted @ 2019-09-08 17:30 Simex 阅读(94) 评论(0) 推荐(0)
摘要:这是道坑比数论题。 它是如此的坑以至于我没法写上过程 (太长了) 过程:大佬 代码: 1 #include<iostream> 2 #include<cstdio> 3 using namespace std; 4 long long x,y; 5 long long a,b; 6 void exg 阅读全文
posted @ 2019-07-28 21:46 Simex 阅读(163) 评论(0) 推荐(0)
摘要:链接:P3383 这道题考的是一个线性筛,主要有两种:埃氏筛和欧拉筛 先说埃氏筛,埃氏筛很简单。只要检查每一个数。如果他是没有被标记,就证明他是一个质数。这样我们就需要把他的每一个数标记为合数,然后重复 极为简单 1 #include<bits/stdc++.h> 2 using namespace 阅读全文
posted @ 2019-07-28 20:01 Simex 阅读(256) 评论(0) 推荐(0)