题目出处:《信息学奥赛一本通》例5.1。 题目描述 素数环:从 $1$ 到 $n(2 \le n \le 20)$ 这 $n$ 个数摆成一个环,要求相邻的两个数的和是一个素数。 输入格式 输入包含一个整数 $n(2 \le n \le 20)$ 。 输出格式 按字典序从小到大的顺序输出所有排列方案, ...
分类:
其他好文 时间:
2019-09-03 09:58:07
阅读次数:
76
习题1 1.1. 用于计算gcd(m,n)的欧几里得算法 1.1.1. 算法描述 辗转相除法,又名欧几里得算法(Euclidean algorithm),是求最大公约数(greater common divisor)的一种,通常做法是:用较小的数去除较大的数,用第二余数再去除第一余数,最终我们可以得 ...
分类:
编程语言 时间:
2019-09-03 09:54:40
阅读次数:
121
题目 设函数 $$log_a*(x) = \begin{cases}-1, & \text{ if } x < 1 \\ 1+log_a*(log_ax) & \text{ if } x \geq 1 \end{cases}$$ 求最小的正整数 $x$,使得 $log_a*(x) \geq b$ 分 ...
分类:
其他好文 时间:
2019-09-02 12:10:26
阅读次数:
261
原题 题目链接 题目分析 由题意可知,我们要做的第一步就是把H-prime筛出来,仔细观察可以发现,如果i是H-prime,则i*i+4*k*i(k=0,1,2,3...)也是H-prime,这里为了方便筛可以把原数x表示为x/4.筛出H-prime后就暴力处理出H-composites(记得去重) ...
分类:
其他好文 时间:
2019-09-02 10:07:06
阅读次数:
95
原题 题目链接 题目分析 依题意要先检测p是否为素数,这个可以用埃筛筛出1-sqrt(1e9)的素数,然后判定一下p是否能被这些数整除,不能的话就是素数,否则则为合数.至于a的p次方直接套个快速幂就行了. 代码 ...
分类:
其他好文 时间:
2019-09-02 09:37:23
阅读次数:
70
一、对原数组造成影响的api 1.push() 在最后添加 eg: 原数组: var arr = [5, 20, 6, 5, 80, 4] 使用push()之后: arr.push(123); 变为: [5, 20, 6, 5, 80, 4,123] 2.pop() 取出最后一个 eg: 原数组: ...
分类:
编程语言 时间:
2019-09-01 23:46:38
阅读次数:
111
退役老人现在连leetcode都不会做了 = = 今天早上做了leetcode第三题题目看错了,加上比赛中间还在调投稿的实验,一心二用直接gg 总结下教训就是 本渣现在做题连题目都看不清就开始做。开始写题之前应当把样例过一遍,然后自己再造1 2个例子,然后再开始做 A题:统计素数的个数(素数筛或者s ...
分类:
其他好文 时间:
2019-09-01 16:20:21
阅读次数:
78
因为有道ac自动机+状压dp的题,故开此坑。 状压dp:状态压缩dp(元素数量通常不超过20),借助位运算将状态压缩。 空间复杂度:O(n*n) 上一行的状态为now,下一行的状态为prev,通过枚举上一行所有状态,来更新当前行、当前状态的最优解。 给定n*m矩阵,行列都不超过20,有些格子可选有些 ...
分类:
其他好文 时间:
2019-09-01 01:11:58
阅读次数:
118
#include <stdio.h> int main() { // 判断一个大于等于3的正整数, 是否为素数? // 素数定义: 只有1和它本身两个因数的自然数 // [素数]: 除了1和本身, 不能被其他任何整数整除的数. // 0~100素数: // 2、3、5、7、11、13、17、19、2... ...
分类:
其他好文 时间:
2019-08-31 23:29:44
阅读次数:
86
先讲解一下线段树 线段树用于区间操作的优化,来看一道这样的题: https://www.luogu.org/problem/P2068 在一个序列中,支持以下操作:修改序列中一个数,查询其中y一段区间的和 元素数<=100000,操作数<=10000. 由于数据较大,n*m显然过不了,这时,就要用到 ...
分类:
其他好文 时间:
2019-08-31 23:28:50
阅读次数:
100