随笔分类 -  题解

摘要:原题 题意: 给定一棵有根树,每个节点有一个权值。可以选择一些节点,选出的节点可以支配它子树中的一个叶节点。要求选出一个权值和最小的节点集合,使所有的叶节点都能被支配。输出最小权值和与所有可以被选出的节点。 题解: 对于第一个问题,有一个很明显的树形DP做法,~~然后我就被第二问输出方案搞死了。~~ 阅读全文
posted @ 2021-11-15 21:44 残碑小筑 阅读(145) 评论(0) 推荐(0)
摘要:原题链接 如果没看过2020NOI Online序列那道题的话倒是道很有意思的思维题... Solution 首先我们有一个结论,如果$\sum v_i -\sum t_i % 2 = 12=1$为奇数,则一定无解,因为我们每次操作都只会将这个差值偶数倍改动。 下面考虑这个差值是偶数的情况。 因为这 阅读全文
posted @ 2021-11-14 18:27 残碑小筑 阅读(90) 评论(0) 推荐(0)
摘要:T1: 这次最大的失误就是误判T1不可做... 因为每架飞机只要有空闲的廊桥就可以就可以停靠,以此可以推出一个结论:当廊桥数量增加时,已经停靠的飞机的位置是不会发生变化的。我们可以用两个优先队列求出有无限多个廊桥时,每架飞机停靠的位置。只有停靠的位置小于等于当前廊桥数的飞机才能停下。用前缀和处理下, 阅读全文
posted @ 2021-10-25 22:24 残碑小筑 阅读(191) 评论(0) 推荐(0)
摘要:题目:P1492 考虑分治。先对横坐标进行排序,用solve(l,r)表示表示横坐标在(l,r)内的点之间最小距离。我们将区间(l,r)分成两部分,则我们要求的最小距离可以分成三个部分: 1.左边的点之间的最小距离 2.右边的点之间的最小距离 3.左边的点到右边的的点之间的最小距离 先分别递归求求解 阅读全文
posted @ 2021-10-12 20:56 残碑小筑 阅读(61) 评论(0) 推荐(0)
摘要:话说这好像还是我第一次听hkk神仙讲课呢...... 结果hkk把ppt标题打错了,害的一群人早上半天全在想DP...... 热身题 T1:CCPC2021 网络赛 F 难度:D1T1 签到题,注意到的值为4,所以我们对n%4进行分类。代码如下: #include<iostream> using n 阅读全文
posted @ 2021-10-05 20:09 残碑小筑 阅读(64) 评论(0) 推荐(0)
摘要:原题 毒瘤DP......从lyd的蓝书上看到的题目,然后我昨晚就调了一晚上,今早一来发现是DP状态搞反了...... 题意: 一个只由“( )”,“[ ]”,“{ }”构成的字符串,若“( )”内没有“[ ]”,“[ ]”内没有“{ }”,则称这样的字符串为SS表达式(空串也是SS表达式)。现在需 阅读全文
posted @ 2021-09-30 08:22 残碑小筑 阅读(115) 评论(0) 推荐(0)
摘要:一道很好的DP题。 原题:https://www.luogu.com.cn/problem/P2569 题意:太长就不概括了,自己把题目好好读几遍,我一开始做的时候就把题意读错了... 解析: 看样子就知道是个DP(笑)。显然以天数为阶段,再看看范围,2000*2000完全可以跑,状态的第二个维度很 阅读全文
posted @ 2021-09-28 21:50 残碑小筑 阅读(110) 评论(0) 推荐(0)
摘要:原题: https://www.luogu.com.cn/problem/P3959 简化下题意,就是给定一张图,我们需要求出这张图的一棵有根生成树,满足生成树中各边与该边深度的乘积之和最小。 该题的暴力算法非常显然,穷举树的根,从已经在树中的点向外dfs即可。下面的代码是不加任何优化的裸暴力: # 阅读全文
posted @ 2021-09-26 17:06 残碑小筑 阅读(181) 评论(0) 推荐(0)

faults = { minSize : 10, maxSize : 20, newOn : 1000, flakeColor : "#FFFFFF" /* 此处可以定义雪花颜色,若要白色可以改为#FFFFFF */ }, options = $.extend({}, defaults, options); var interval= setInterval( function(){ var startPositionLeft = Math.random() * documentWidth - 100, startOpacity = 0.5 + Math.random(), sizeFlake = options.minSize + Math.random() * options.maxSize, endPositionTop = documentHeight - 200, endPositionLeft = startPositionLeft - 500 + Math.random() * 500, durationFall = documentHeight * 10 + Math.random() * 5000; $flake.clone().appendTo('body').css({ left: startPositionLeft, opacity: startOpacity, 'font-size': sizeFlake, color: options.flakeColor }).animate({ top: endPositionTop, left: endPositionLeft, opacity: 0.2 },durationFall,'linear',function(){ $(this).remove() }); }, options.newOn); }; })(jQuery); $(function(){ $.fn.snow({ minSize: 5, /* 定义雪花最小尺寸 */ maxSize: 80,/* 定义雪花最大尺寸 */ newOn: 200 /* 定义密集程度,数字越小越密集 */ }); });