题目 还是懒得把题目放上来了. 大意:给你一棵带点权的树,你要花费一些代价选择一些点使得相邻的两个点至少有一个被选. 然后有很多个询问,每个询问强制两个点的状态,问强制了这两个点的状态后的方案. 比赛思路 没时间了,没时间了-- 匆匆打个44分的暴力就好了. 结果混淆了概念,打出来的DP是求一个点自己或周围至少有一个选的方案,和题目就不是一个样子. 比赛结束了,我还没有调处来,然后就爆0了. 解法 先说说暴力. 这是一个非常典型的问题,设fi,0/1f_{i,0/1}fi,0/1​表示以iii为…
[数据结构]运输计划 NOIP2015提高组D2T3 >>>>题目 [题目描述] 公元 2044 年,人类进入了宇宙纪元.L 国有 n 个星球,还有 n−1 条双向航道,每条航道建立在两个星球之间,这 n−1 条航道连通了 L 国的所有星球.小 P 掌管一家物流公司, 该公司有很多个运输计划,每个运输计划形如:有一艘物流飞船需要从 ui 号星球沿最快的宇航路径飞行到 vi 号星球去.显然,飞船驶过一条航道是需要时间的,对于航道 j,任意飞船驶过它所花费的时间为 tj,并且任意两艘飞…
[NOIp2018提高组]旅行: 题目大意: 一个\(n(n\le5000)\)个点,\(m(m\le n)\)条边的连通图.可以从任意一个点出发,前往任意一个相邻的未访问的结点,或沿着第一次来这个点的边返回.需要遍历每一个点.没经过一个新的结点,就将这个结点写下来.最终可以得到一个序列.求字典序最小的序列. 思路: 对于树的情况,显然从\(1\)出发,每次从字典序最小的相邻结点DFS即可. 对于有环的情况,由于环只有一个,我们可以将环找出来,枚举删掉环上的每一条边,然后按树的情况求解即可. 时…
[NOIp2018提高组]赛道修建 题目大意: 给你一棵\(n(n\le5\times10^4)\)个结点的树,从中找出\(m\)个没有公共边的路径,使得第\(m\)长的路径最长.问第\(m\)长的路径最长可以是多少. 思路: 二分答案+树形DP.\(f[x]\)表示以\(x\)为根的子树中最多能找出几个长度\(\ge k\)的路径.\(g[x]\)表示去掉已经满足的路径,从\(x\)子树内往上连的最长的路径有多长. 转移时将所有子结点的贡献\(g[y]+w\)排序.若贡献已经\(\ge k\)…
[NOIp2018提高组]货币系统 题目大意: 有\(n(n\le100)\)种不同的货币,每种货币的面额为\([1,25000]\)之间的一个整数.若两种货币系统能够组合出来的数是相同的的,那我们就称这两种货币系统是等价的.给定一个货币系统,求不同面额货币数最少的等价的货币系统. 思路: 将面额从小到大排序,如果一种面额能够被其它面额表示出来,那么这种面额就是多余的.因此只需要跑一个背包即可. 源代码: #include<cstdio> #include<cctype> #inc…
[NOIp2013提高组]积木大赛/[NOIp2018提高组]铺设道路 题目大意: 对于长度为\(n(n\le10^5)\)的非负数列\(A\),每次可以选取一个区间\(-1\).问将数列清零至少需要几次操作. 思路: 差分后,将大于\(0\)的差分累加入答案即可. 源代码: #include<cstdio> #include<cctype> #include<algorithm> inline int getint() { register char ch; whil…
D1T1:铺设道路 回忆NOIP2013D2T1 积木大赛,发现这两题唯一的区别就是一个是造山一个是填坑,而把填坑的操作反序就是造山,所以可以直接使用那道题的方法. 具体方法是,从左到右每次考虑新的一列,若这一列的坑比左边一列浅,那么可以在填左边一列的时候顺便填好这个坑(只要把所有右端点为i-1的操作右端点全部改为i即可),不需要任何操作.若这一列的坑比左边深,那么就必须先将这一列的坑填到与左边平齐,再让左边的操作顺带把这个坑填平. 于是有:若a[i]<=a[i-1],ans不变,否则ans+=…
NOIP2018提高组省一冲奖班模测训练(六) https://www.51nod.com/Contest/ContestDescription.html#!#contestId=80 20分钟AC掉第一题. 然后第二题感觉和最长公共子序列有关,怒干2h,写出了一个错误的算法 只拿了百分之20的数据的分 第三题觉得是数学题,然后推不出来(然而正解是dp……似曾相识的场景) A 工程制图基础 https://www.51nod.com/Contest/Problem.html#!#contestP…
NOIP2018提高组省一冲奖班模测训练(五) http://www.51nod.com/Contest/ContestDescription.html#!#contestId=79 今天有点浪…… 第一题想了一个多小时想到了正解,然后敲到一半就去看lol总决赛了(恭喜IG!!!!!!) 然后就没有然后了…… A 循环 小D站在一个长度为n的环,环上的位置从0到n-1编号.位置0与位置n-1相邻.对于一个位置i, 小D只能跳到距离位置i不超过R[i]的位置上. 可以顺时针也可以逆时针跳.比如当n…
NOIP2018提高组金牌训练营——动态规划专题 https://www.51nod.com/Live/LiveDescription.html#!#liveId=19 多重背包 二进制优化转化成01背包就好了 1503 猪和回文 http://www.51nod.com/Challenge/Problem.html#!#problemId=1503 一只猪走进了一个森林.很凑巧的是,这个森林的形状是长方形的,有n行,m列组成.我们把这个长方形的行从上到下标记为1到n,列从左到右标记为1到m.处…