原题链接 https://www.luogu.org/problemnew/show/P1072 这个题是数论+暴力吧,需要一些优化。 先来看看怎么求最大公约数和最小公倍数: 欧几里德算法 求最大公约数 欧几里德算法 求最大公约数 概述 概述 欧几里德算法又称辗转相除法,用于计算两个整数a,b的最大 ...
分类:
其他好文 时间:
2019-06-13 17:26:15
阅读次数:
110
首先要保证底数是原根,才有求解之说呐。 介绍一种BSGS(BabyStepGiantStep)算法,正如其名,走路分大步小步,相结合正是最好的方法。 小于$\sqrt{p}$的数打表保存,然后每次迈大步就好啦~ ...
分类:
其他好文 时间:
2019-06-12 19:57:23
阅读次数:
121
https://www.51nod.com/Challenge/Problem.html ! problemId=1363 求$\sum\limits_{i=1}^{n}lcm(i,n)$ 先换成gcd: $\sum\limits_{i=1}^{n}\frac{i n}{gcd(i,n)}$ 显而易 ...
分类:
其他好文 时间:
2019-06-07 13:01:12
阅读次数:
124
题目链接 http://codeforces.com/problemset/problem/664/A 题意 给两个数,找出它们的最大公因子d,使得从a到b之间的数都可以整除d. 题解 gcd(1,a)=1,gcd(a,a)=a,gcd(a,a+1)=gcd(a,1)=1. 代码 ...
分类:
其他好文 时间:
2019-06-07 00:55:27
阅读次数:
101
题目大意:对于一个序列,定义它的价值是它的所有前缀和的 $\gcd$ 中互不相同的数的个数。给定整数 $n$,问在 $1$ 到 $n$ 的排列中,有多少个排列的价值达到最大值。答案对 $10^9+7$ 取模。 $2\le n\le 10^6$。 一道 Div. 2 的难度 2500 的题,真的不是吹 ...
分类:
其他好文 时间:
2019-06-07 00:37:20
阅读次数:
174
直接推公式没有推出来 看了题解才会做。。 首先能够确定前面几个数的gcd一定是2^j * 3^k, 其中k<=1 那么可以用dp[i][j][k]来表示到第i位的gcd是2^j*3^k f(j,k) 为 n / 2^j / 3^k 那么状态转移有 dp[i+1][j][k]=dp[i][j][k]* ...
分类:
其他好文 时间:
2019-06-07 00:17:38
阅读次数:
97
什么都不会的蒟蒻开始打基础了$qwq$ "CF1166E The LCMs Must be Large" 考虑集合$\{a,b,c\}$ 对于任意两次限制交集为空,则不可能 考虑两次限制分别为$\{a\},\{c\}$,则$lcm_a lcm_{b,c},lcm_a lcm_{a,c}$,又$lcm ...
分类:
其他好文 时间:
2019-06-05 20:17:55
阅读次数:
123
题目分析: 对于向上取整我们总有,$\lceil \frac{\lceil \frac{n}{a} \rceil}{b} \rceil = \lceil \frac{n}{a*b} \rceil$这个不难想到。 然后朴素的dp很容易想到,用上面的式子优化一下就行了。 代码: ...
分类:
其他好文 时间:
2019-06-04 16:17:10
阅读次数:
272
https://codeforces.com/contest/1174/problem/C 题意:给定一个数字n,构造出一个数组,在这个数组下标[2,n]的区间内,每个元素对(ai,aj)如果i和j是互质数,那么ai != aj 并且数组的最大值要尽量小 思路:2个不相同的质数之间必然是互质数,2个 ...
分类:
编程语言 时间:
2019-06-04 12:35:31
阅读次数:
117
1。唯一分解定理 总体有三种,这里只说一种,整数的唯一分解定理。 整数惟一分解定理亦称算术基本定理,是数论的重要定理之一。该定理断言:任何一个大于1的整数n都可以分解成若干个素因数的连乘积,如果不计各个素因数的顺序,那么这种分解是惟一的,即若n>1,则有 n = p1*p2*…*pm (1) 其中p ...
分类:
其他好文 时间:
2019-05-28 12:40:27
阅读次数:
113