摘要: 别偷吃我的骨灰 阅读全文
posted @ 2024-09-11 18:45 lyrrr 阅读(28) 评论(0) 推荐(1) 编辑
该文被密码保护。 阅读全文
posted @ 2024-12-13 22:33 lyrrr 阅读(0) 评论(0) 推荐(0) 编辑
摘要: https://atcoder.jp/contests/abc378/tasks/abc378_e #include <bits/stdc++.h> using namespace std; #define int long long #define lowbit(x) (x&(-x)) #defi 阅读全文
posted @ 2024-12-13 18:37 lyrrr 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 补码 正数和0补码为本身,负数补码为取反码后加1 多目运算 有几个数参与运算就有几个目,比如取反是单目运算~ 设置一位为0或是1 int st(int x, int i, int k) { if (k) return (x | (1 << i)); else return x & ~(1 << i) 阅读全文
posted @ 2024-12-13 15:35 lyrrr 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 期望的性质 线性性 (Linearity) 对任意两个随机变量 \(X, Y\) 和常数 \(a, b\),无论 \(X,Y\) 是否独立,期望满足: \[\mathbb{E}[X+Y] = \mathbb{E}[X] + \mathbb{E}[Y], \quad \mathbb{E}[aX+b] 阅读全文
posted @ 2024-12-13 14:57 lyrrr 阅读(1) 评论(0) 推荐(0) 编辑
摘要: E 概率期望 #include<bits/stdc++.h> using namespace std; #define LL long long #define pii pair<int, int> #define endl '\n' #define mkp make_pair // #define 阅读全文
posted @ 2024-12-13 14:55 lyrrr 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 本来写完了但是忘保存了。。寄 阅读全文
posted @ 2024-12-12 22:00 lyrrr 阅读(3) 评论(0) 推荐(1) 编辑
摘要: https://codeforces.com/problemset/problem/1800/F (对于每个i做两个状压就可以用二进制运算去算,这教导我们不要随便压3个状态因为没法算) 我的想法是挨个去满足所有条件然后对于每个条件想做法。但是因为条件很多所以应该先观察合法条件之间的联系。 这就产生了 阅读全文
posted @ 2024-12-10 21:10 lyrrr 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 状态为f[i][j][k],和g[i][j][k], i为i子树内,j为放置的摄像头个数,f中k为内部向外延伸的长度,g中k为外部向内延伸长度 当内部摄像头j*k>=siz[i]时一定可以全覆盖,要特殊记录,这也是复杂度为n方的关键 三维太多,用encode和decode压缩空间 考虑转移 因为太难 阅读全文
posted @ 2024-12-03 14:35 lyrrr 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 潜入行动 为例, 主要是dfs部分的代码,每次合成两个树,然后再把新的树往上面和,转移会非常容易 #include<bits/stdc++.h> using namespace std; #define LL long long const int N = 1e5 + 10, mod = 1e9 + 阅读全文
posted @ 2024-12-03 13:53 lyrrr 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 主要方法:用多个数组表示不同状态,同时维护两个dp数组 #include<bits/stdc++.h> using namespace std; #define int long long const int N = 500 + 10, mod = 1e9 + 7; int n, k, f[N][N 阅读全文
posted @ 2024-12-03 13:50 lyrrr 阅读(5) 评论(0) 推荐(0) 编辑