YunBaichuan
YunBaichuan
全部文章
分类
归档
标签
去牛客网
登录
/
注册
YunBaichuan的博客
全部文章
(共121篇)
hash表,模拟(Python)
思路:hash表 + 模拟。直接根据题意进行模拟即可,当对手加入牌的时候,就把和加入到hash表中,注意需要判断下牌的范围是否在到之间;同理,当对手拿走牌的时候,就分别把和从hash表中减去一次,也是需要判断下牌的范围是否在到之间,如果牌减完了就直接从hash表中删掉。最终,hash表的长度就是每一...
2026-03-06
0
13
网格图bfs(Python)
思路:网格图bfs板子题。没太多好说的,纯板子 代码: import sys from collections import deque input = lambda: sys.stdin.readline().strip() import math inf = 10 ** 18 def I(...
2026-03-05
0
9
贪心,区间合并(Python)
思路:贪心 + 区间合并。首先看数据量,用dp肯定过不了,那就考虑贪心;接下来把x和h进行排序,也就是用(x, h)进行自定义排序;然后进行区间合并操作,具体来说就是用栈进行模拟,模拟完后得到合并的多段区间。最终,按照区间长度进行降序排列,选择前m个长度最大的区间,加起来就是答案了 代码: impo...
2026-03-04
0
13
思维(Python)
思路:思维题。首先特判0,如果有0存在直接返回False即可;然后计数判断元素种类,如果元素种类不为2,此时必然满足条件,返回True;如果元素种类确实只有两种,那再额外判断一下他们的和是否为0,如果是的话必然无法满足条件,反之满足条件 代码: import sys from collections...
2026-03-03
0
13
Floyd算法(Python)
思路:Floyd算法。把输入的a, b边建邻接矩阵,然后跑一遍Floyd算法,之后再算出每个数位有几种变化情况。最终,遍历输入x的每一个数位,把每个数位可能的变化情况进行累乘并取mod即可。为什么?因为每一个数位独立,那就可以用乘法原理把各自的可能性给乘起来,就可以得到最终答案了 代码: impor...
2026-03-02
1
13
模拟(Python)
思路:模拟题。每次&运算取最后一位加到答案中,然后不断右移即可 代码: import sys input = lambda: sys.stdin.readline().strip() import math inf = 10 ** 18 def I(): return input...
2026-03-01
0
20
思维(Python)
思路:思维题,脑筋急转弯。由于题目说了x元素是之前所有元素的异或和,因此根据异或的性质可知:整个长为n的数组a异或和为0。所以说数组a中的任意一个元素充当x,此时其他元素的异或和必然也是x,因为整体的异或和要为0,这恰恰满足条件。所以说输出任何一个元素即可,我这里输出第一个元素 代码: import...
2026-02-28
0
21
打表找规律(Python)
思路:非常经典的打表找规律题目,其背后的本质是:1.裴蜀定理:对于整数a和b,方程ax + by = n有整数解,当且仅当 gcd(a,b)∣n,也就是gcd能够去整除n。2.弗罗贝尼乌斯硬币结论:对于互质的正整数a和b,最大的不能表示为ax + by(x,y ≥ 0)的数是:ab − a − b。...
2026-02-27
0
25
矩阵快速幂(Python)
思路:斐波那契数列变种,矩阵快速幂优化。观察题目的数据量可知,这题我们需要用到矩阵快速幂进行优化。首先写两个函数:1.矩阵乘法函数mat_mul、2.矩阵快速幂函数mat_pow。由于本题的斐波那契数列递推比一般的斐波那契数列递推用到的数要更前一位,所以说就需要用到3维的递推矩阵 接着对3维递推矩阵...
2026-02-26
0
25
递推(Python)
思路:经典递推板子题,中间再加个取mod操作即可 代码: import sys input = lambda: sys.stdin.readline().strip() import math inf = 10 ** 18 def I(): return input() def II(...
2026-02-25
0
29
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页