摘要: 题意分析 给定一棵树,定义树上一个点的权值为它染的不同颜色的个数(一个点会有多种颜色) 你需要支持两种操作: 将\(x\)的子树全部染上(添加)某种颜色 查询给定\(x\)的子树内的所有点的权值之和 考场思路 对于每一个点直接使用\(set\)记录其染上的颜色,并在修改时记录每一个点的子树权值后缀和 阅读全文
posted @ 2024-11-21 20:48 Torrentolf 阅读(13) 评论(0) 推荐(0)
摘要: 考场思路 考虑要动态维护最大值,可以直接使用优先队列进行维护,但是,考虑到我们并不好直接修改优先队列中的每一个元素,所以决定使用 vector 先排一遍序,再使用冒泡排序进行动态维护,时间复杂度\(O(mn)\),可以拿 35pts 。 代码 #include<iostream> #include< 阅读全文
posted @ 2024-11-21 19:17 Torrentolf 阅读(45) 评论(0) 推荐(0)
摘要: 题意分析 给出一个矩阵,要求每行只能选一个节点,每列选的节点不能超过所有选的节点的一半,不能不选,给出每个节点的选择方案数,求总方案数 考场思路 考虑暴力枚举每一个点的选择情况,最后统计答案。 对于行: 但是因为有每一行只能选择一个的限制,所以考虑当前行选择一个后直接转跳到下一行。 对于每一个点大小 阅读全文
posted @ 2024-11-21 19:16 Torrentolf 阅读(40) 评论(0) 推荐(0)
摘要: 23集训测试题(10.8) 密码锁 这题数据量较小,可以直接暴力枚举所有密码情况并一一判断 暴力代码 #include<iostream> #include<cstring> #include<algorithm> using namespace std ; struct L { int state 阅读全文
posted @ 2024-11-21 19:14 Torrentolf 阅读(25) 评论(0) 推荐(0)