树上分组背包问题

  第一次碰到这种问题,记录一下,后续会慢慢补充题目链接 《P1273 有线电视网》AC代码:#include <bits/stdc++.h>using namespace std;const int N = 3010;int h[N], e[N], w[N], ne[N], idx;i
算法 刷题 2023年03月28日 178次浏览

基环树与拓扑排序技巧

基环树的基本知识: https://www.cnblogs.com/fusiwei/p/13815549.html《参加会议的最多员工数》https://leetcode.cn/problems/maximum-employees-to-be-invited-to-a-meeting/descrip
算法 刷题 2023年03月27日 189次浏览

无向树上的拓扑排序【力扣周赛 338——T4】

题目链接: https://leetcode.cn/problems/collect-coins-in-a-tree/description/注意无向图上拓扑排序是检测du[u] == 1,有向图中是din[u] == 0。
刷题 2023年03月26日 206次浏览

牛客小白月赛69补题——F题

题目链接:https://ac.nowcoder.com/acm/contest/52441/F?&headNav=acm关键结论:  格点图中不存在坐标均为整数的等边三角形。核心思想:  枚举等腰三角的的顶点 PPP,然后统计其它点到 PPP 距离相等的数量,通过开桶的方式来统计,做到不重
刷题 2023年03月25日 189次浏览

最小链覆盖——Dilworth定理,与LIS问题

DilworthDilworthDilworth 定理,一言以蔽之,偏序集能划分成的最少的全序集个数等于最大反链的元素个数。https://blog.csdn.net/qq_43408238/article/details/104542949导弹拦截:https://www.luogu.com.cn
算法 2023年03月20日 209次浏览

Codeforces Round 856 (Div. 2)补题——C、D题

贪心 + 思维#include <bits/stdc++.h>using namespace std;const int N = 100010;int a[N]; int n;void solve(){scanf("%d", &n);for(int i = 1
刷题 2023年03月12日 247次浏览

牛客小白月赛68——F题

https://ac.nowcoder.com/acm/contest/51958/F  非常折磨的一道题,需要注意许多细节问题(详见代码注释)  本题的关键性质是单次交换最多修正6个点,所以两次交换最多只能存在12个坏点,否则一定失败。每次处理一下坏点集合。且需要动态计算维护,不用循环间的坏点集合
刷题 2023年03月11日 168次浏览

Codeforces Round 857 (Div. 2) ——D题

题目链接:https://codeforces.com/contest/1802/problem/D这题补题花了好长时间。结果发现题意没理解清。我们设第一个朋友为 AAA,第二个朋友为 BBB,那个每个商店中第一个物品 a[i]a[i]a[i] 只能买给 AAA,第二个物品 b[i]b[i]b[i]
刷题 2023年03月10日 265次浏览

C++生成随机数

<cstdlib>中的rand()和srand()函数是 CCC 语言使用的随机数生成方法,通过线性同余法计算。然后根据宏定义,产生的随机数最大范围是INT_MAX,因此对于一些需要更大的随机数的情况就不适用了。且用这种方式生成不能保证序列的质量。srand常用时间作为种子:#inclu
算法 刷题 2023年03月10日 205次浏览

通用的换根DP做法

学习了一下换根DP,主要是根据一下两位大佬的博客学习的~严格鸽Seaway-Fu题目练习:P3478 [POI2008] STA-StationAC代码:#include <bits/stdc++.h>using namespace std;typedef long long LL;co
算法 刷题 2023年03月08日 233次浏览