Steal 偷天换日 题解(From luoguBlog)】的更多相关文章

树形+背包 奇奇怪怪的dp. 考试的时候费了半天劲把题读完后思路基本正解, 然而也不知道为什么脑子鬼畜了一下打了个非递归建树? 而且链式前向星建边? 岔路口和藏品都搞成节点? 自己给自己找麻烦Orz. 于是输入爆炸,无法调试. 比较简便的打法是把权值左右儿子几个藏品各多少钱都塞到结构体里,一边建树一遍跑dp(在每个馆里跑背包然后把儿子的价值树形dp到根): 然而还是有很多坑点 所以恐怖如斯如机房里的各路大神仍然没有超过40分的: 边权*2因为要逃跑: 时限-1因为要逃跑: 玄妙的数组大小: Re…
题面 状压好题 1<= n <= 30, 0 <= m <= 30, 1 <= K <= 8 这美妙的范围非状压莫属 理所当然地,0和1代表度的奇偶 dp[i][j][st]即考虑了i个点j条边,最后k个城市及自身的状态为st (0<=st<=2k+1-1) 把n和p连起来(n-k<=p<n) 即 (dp[i][j][st]+=dp[i][j-1][st^1^power[i-p]])%=mod; 状态变化后 还需进行特殊转移 即 (dp[i+1]…
考试前深陷分块泥潭所以刚开始以为是分块. 然而这题数据水到暴力卡常都能AC 正解:万物皆可线段树 节点存储区间长度.区间最长连续空房长度.从左往右最长连续空房长度.从右往左最长连续空房长度. 维护后三个值即可. #include<cstdio> #include<iostream> #include<cstring> using namespace std; int n,m; const int N=50010; int read() { int x=0,f=1;cha…
N<=20000!N2的LCS要原地爆炸. 去您妈的优化考场上有分就行TLE60真香嘿嘿嘿 然而这显然是个板子只不过像我这样见识短浅的蒟蒻不知道罢了 正解: 某大佬的博客 转化为lis后二分 复杂度nlogn. #include<cstdio> #include<iostream> #include<algorithm> using namespace std; int n,s1[100010],s2[100010],pos[20010][8],num[20010…
唯一能得分的题也被自己搞炸了,好的. 考场上读完题基本认定和lca脱不了干系,想了一会确认是树剖. 那么问题来了,考前一节课刚发现自己之前打的树剖是错的. 而且就算是错的我也没信心考场调出来. 于是打了个自认为复杂度不高的暴力,T出天际,被各位不屑于打树剖的巨佬の向上标记干趴下. 考完翻书学了一下树上差分,赶脚不错. 树剖||Tarjan求lca+树上差分 后者的思路是预处理路线上每两个房间的lca 每次num[x]++,num[y]++,num[lca]++,num[father[lca]]+…
线段树优化dp 数组f[i][j]表示在前i个村庄内,第j个基站建在i处的最小费用 根据交线牛逼法和王鹤松式可得方程 f[i][j]=min(f[k][j−1]+cost(k,i)) cost(k,i)表示第i~k个村庄之间没有被基站覆盖的村庄所需的赔偿费用,计算费用的复杂度为O(n) 利用二分查找预处理每个位置的需求范围bef[i],beh[i] 之后就是利用线段树维护f[]+cost()的最小值,区间查询区间更新 当beh[x]=i,若i不建造,则加cost(可能存在很多x,前向星或vect…
偷天换日 3月12号石家庄一个客户(后面简称乙方)有几家门店,平台收银(web)有一些功能无法正常使用,平台有上千家门店在使用,到目前为止别的省份都没有此问题.远程协助发现,js日期控件无法正常调用,报js错误.日期插件用的是my97datepicker,用了这么久也没见出过什么问题. 浏览器查看页面加载的js,发现页面本身加载的js中有重复的(随机重复),一个是common.js还有个common.js?145001231.代码中只有common.js.点开common.js?14500123…
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我没看,看不懂. 基本思路:我不会. 参考代码:找Oyk老师和Czj老师去. B. The background of water problem 题目大意(大写加粗的水题):给定$N$个学生和他们$K$个科目的成绩$S_i$,再给出各科目$K_i$的权重顺序$Q_i$,求排名之后,拥有id为$X$的…
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #include <string.h> #include <time.h> #include <stdlib.h> #include <string> #include <bitset> #include <vector> #include <…
2561: 最小生成树(题解) Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1628  Solved: 786 传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=2561 Description 给定一个边带正权的连通无向图G=(V,E),其中N=|V|,M=|E|,N个点从1到N依次编号,给定三个正整数u,v,和L (u≠v),假设现在加入一条边权为L的边(u,v),那么需要删掉最少多少条…