题解列表

筛选

砍柴 - 预处理 & 记忆化搜索

####解题思路博弈问题,预处理范围内的质数集,`booleanwin(intx)`用DFS判断当前剩余长度能否获胜,递归交换对手。对`win(x)`,二分质数集查询$$\leqslant$$`x`的最大位置,倒序遍历,更快接近DFS基态,否则$$10^5$$容易栈溢出。

吊坠 - Kruskal 算法

####解题思路分2大步:#####第1步求出所有边的边权,如:```text[0,4,2,2][0,0,2,2][0,0,0,1][0,0,0,0]```本题中的字符串可旋转,考虑在每个字符串后重复一次自身,如`"abcd"`变为`"abcdabcd"`,

回文数组 - 贪心

摘要:#### 解题思路 操作: 1. 选择一个元素,对其增减 1 2. 选择相邻的两个元素,对其增减 1 双指针 `i`、`j` 从两端向中间看,每次先用“操作 1”使 `arr[i]……

数字诗意 - 找规律

####解题思路手写/暴力打一个小表,下划线`_`表示无法表出的数字:```text__3_567_9101112131415_17181920```找规律,发现只有$$2^n$$无法表出。记`long`内最大的$$2^n$$为`POW`,对输入的每个数`x`,`POW%x==0`时答案加1。

2983: 花生采摘

解题思路:贪心策略,按照题目要求从最多的花生开始采摘注意事项:数据与题意不符,有部分重复数据,因此有三组数据未通过,以hack方式解决,希冀后来的同学能够找到完美的解决方式参考代码:#include#include#includeusingnam

十行简便 有规律的数列求和

摘要:解题思路:利用列表的方式注意事项:注意两位小数参考代码:n=int(input())a=[2]b=[1]s=0for i in range(n):    a.append(a[i]+b[i])    ……