摘要: 到了数论这块就上难度了桀桀桀 阅读全文
posted @ 2025-06-14 22:44 HLAIA 阅读(16) 评论(0) 推荐(0)
摘要: 以BFS、DFS为基础的各种搜索算法 阅读全文
posted @ 2025-06-14 20:08 HLAIA 阅读(15) 评论(0) 推荐(0)
摘要: 容斥原理 集合 \(S\) 的子集 \(A_1\) 有性质 \(p_1\) ,\(A_2\) 有性质 \(P_2\) , \(\dots\) , \(A_n\) 有性质 \(P_n\) 。 那么,集合 \(S\) 中具有性质 \(P_1,P_2,\dots,P_n\) 的集合个数为 \[\Big|\ 阅读全文
posted @ 2025-06-14 12:31 HLAIA 阅读(23) 评论(0) 推荐(0)
摘要: ITA练习赛2 B 这道签到题我交了7发...... 最初把题目看成了任意两个元素互素,结果怎么提交都不对,就发现看错题了... #include <bits/stdc++.h> using namespace std; const int maxn = 1e5+5; int n,a[maxn]; 阅读全文
posted @ 2025-06-14 12:30 HLAIA 阅读(5) 评论(0) 推荐(0)
摘要: 基环树 基环树不是树,而是只有一个连通环的图,它有$ n \(个点和\) n $条边。 无向图上的基环树。在一颗基于无向图的无根树加上一条边,就形成了基环树。去掉环上任意一条边,基环树就变成了一颗真正的树 有向图上的基环树。一个有向无环图,如果能在图中加一条边形成一个自连通的环,则形成一颗基环树。把 阅读全文
posted @ 2025-06-14 12:30 HLAIA 阅读(11) 评论(0) 推荐(0)
摘要: 拓扑排序 拓扑排序不是对数字进行大小排序的那种排序,而是对一系列事物的顺序关系和依赖关系进行排序,属于图论。拓扑排序的排序结果通常不是唯一的。 一个图能进行拓扑排序的充要条件是它是一个**有向无环图(DAG) **。 拓扑排序需要用到点的入度(Indegree)和出度 (Outdegree) 入度: 阅读全文
posted @ 2025-06-14 12:29 HLAIA 阅读(7) 评论(0) 推荐(0)
摘要: 逆序对 最简单的求逆序对的方法:冒泡排序,时间复杂度$ O(n^2) $ 直接给无优化的代码,不解释了: #include <bits/stdc++.h> using namespace std; int a[10] = {3,5,7,9,2,1,4,6,8,10}; int main(void){ 阅读全文
posted @ 2025-06-14 12:29 HLAIA 阅读(11) 评论(0) 推荐(0)
摘要: 区间DP 以一道模板题目为例 石子合并 不能用贪心,会陷入局部最优解。用DP求解 定义dp[i][j]为合并第i堆到第j堆的最小花费 状态转移方程为: dp[i][j] = min(dp[i][k] + dp[k+1][j] + w[i][j]),i <= k < j,w[i][j]表示第i堆到第j 阅读全文
posted @ 2025-06-14 12:28 HLAIA 阅读(20) 评论(0) 推荐(0)
摘要: 蓝桥杯15届国赛B 题目可以在官网https://www.lanqiao.cn/上查到 填空A 暴力找每个长度为8~16的子区间,然后判断是否满足条件即可 #include <bits/stdc++.h> using namespace std; int main(void){ ios::sync_ 阅读全文
posted @ 2025-06-14 12:28 HLAIA 阅读(10) 评论(0) 推荐(0)
摘要: CF1013 div3 给个题目链接,就不一题一题截图了:https://codeforces.com/contest/2091 F 比较好的思路:dp+前缀和 用u[i][j]表示从i-1排满足距离条件的点到点(i,j)的所有走法之和,状态转移方程为: u[i][j] = (prep[i-1][r 阅读全文
posted @ 2025-06-14 12:27 HLAIA 阅读(10) 评论(0) 推荐(0)
摘要: 树形DP 首先是树的储存,树的储存是图的储存的特殊情况,可以用邻接表储存,或链式向前星 洛谷P2015二叉苹果树 定义状态dp[u][j]表示以节点u为根的子树上留 j 条边时的最多苹果数量。dp[1][q]就是答案。 状态转移方程:dp[u][j] = max(dp[u][j], dp[u][j- 阅读全文
posted @ 2025-06-14 12:27 HLAIA 阅读(14) 评论(0) 推荐(1)
摘要: 本部蓝桥试炼 续上回 B 线段树板子,但奈何我现在没法手撕线段树哇(码太长了) 遂选择树状数组,但是--按理说树状数组(nlog2n)的复杂度是能过此题的,而且赛后题解里也说了树状数组能过,为什么才拿25分?? (后来发现问题了--忘记取模,唉) 题补就写线段树的吧 #include <bits/s 阅读全文
posted @ 2025-06-14 12:26 HLAIA 阅读(4) 评论(0) 推荐(0)
摘要: 牛客月赛113 A 签到 #include <bits/stdc++.h> using namespace std; int main(void){ ios::sync_with_stdio(false); cin.tie(0);cout.tie(0); int sum = 1; string s; 阅读全文
posted @ 2025-06-14 12:26 HLAIA 阅读(7) 评论(0) 推荐(0)
摘要: 牛客周赛 85 A 签到 #include <bits/stdc++.h> using namespace std; int main(void){ ios::sync_with_stdio(false); cin.tie(0);cout.tie(0); int n; cin >> n; cout 阅读全文
posted @ 2025-06-14 12:25 HLAIA 阅读(4) 评论(0) 推荐(0)
摘要: 牛客周赛86 A 签到 #include <bits/stdc++.h> using namespace std; int main(void){ ios::sync_with_stdio(false); cin.tie(0);cout.tie(0); int x,y; cin >> x >> y; 阅读全文
posted @ 2025-06-14 12:25 HLAIA 阅读(5) 评论(0) 推荐(0)
摘要: 牛客周赛84 续上周 D 赛时用的数学方法,花的时间和代码量比较多。差分我写得少,这里用题解的差分方法补个题 用差分数组对每个k区间做修改,然后求和以及相邻数字绝对值差对陡峭值的贡献即可 #include <bits/stdc++.h> using namespace std; const int 阅读全文
posted @ 2025-06-14 12:24 HLAIA 阅读(6) 评论(0) 推荐(0)
摘要: 牛客月赛 111 A 贪心,田鸡的最大的a比齐威王次大的v大,田鸡的次大的a比齐威王最小的v大就能赢 #include <bits/stdc++.h> using namespace std; int main(void){ ios::sync_with_stdio(false); cin.tie( 阅读全文
posted @ 2025-06-14 12:23 HLAIA 阅读(8) 评论(0) 推荐(0)
摘要: 牛客周赛81 A 题目 签到 代码 #include <bits/stdc++.h> using namespace std; int main(void){ ios::sync_with_stdio(false); cin.tie(0);cout.tie(0); int a,b,c; cin >> 阅读全文
posted @ 2025-06-14 12:23 HLAIA 阅读(11) 评论(0) 推荐(0)
摘要: 牛客周赛80 A 题目 签到 代码 #include <bits/stdc++.h> using namespace std; int main(void){ ios::sync_with_stdio(false); cin.tie(0);cout.tie(0); int x,y; cin >> x 阅读全文
posted @ 2025-06-14 12:22 HLAIA 阅读(7) 评论(0) 推荐(0)
摘要: 牛客寒假训练营1 大家都报了训练营呐,那我也报一个 v(虽晚不亏) 补一下之前的 A 题目 这题考察素数。由题目得,ai不超过1e9,因此如果给的数有1就输入-1(1和任何数都构成倍数关系),否则输出任意一个比1e9大的素数、 那比1e9大的素数怎么找呢? 新开一个cpp,用埃氏筛把这个数找到,是9 阅读全文
posted @ 2025-06-14 12:21 HLAIA 阅读(8) 评论(0) 推荐(0)