摘要: bzoj1031[JSOI2007]字符加密 题意: 一种加密办法是把需要加密的信息排成一圈,显然,它们有很多种不同的读法。把它们按照字符串的大小排序,读出最后一列字符,就是加密后的字符串。给出原字符串,求加密后的字符串。 题解: 将原字符串重复后接在后面,然后求后缀数组,注意求完后要取那些长度大于 阅读全文
posted @ 2016-07-09 22:35 YuanZiming 阅读(219) 评论(0) 推荐(0) 编辑
摘要: bzoj1566[noi2009]管道取珠 题意: 有个装置,左侧有上下两条管道分别有n个和m个不同颜色的两种球,右侧一条空管道。每次可以选左侧的一条管道将最右侧的球推到右侧管道,经过n+m次操作,右侧管道从右到左形成一个输出序列。求不同种类的输出序列的产生方式数的平方之和。n,m≤500 题解: 阅读全文
posted @ 2016-07-09 22:32 YuanZiming 阅读(498) 评论(0) 推荐(0) 编辑
摘要: bzoj2134单选错位 题意: 试卷上n道选择题,每道分别有ai个选项。某人全做对了,但第i道题的答案写在了第i+1道题的位置,第n道题答案写在第1题的位置。求期望能对几道。n≤10000000 题解: 水题,然而我不会。第i题与第i+1题答案一样的概率是1/max(aiai+1) 代码: 1 # 阅读全文
posted @ 2016-07-09 22:28 YuanZiming 阅读(142) 评论(0) 推荐(0) 编辑
摘要: bzoj1911 [Apio2010]特别行动队 题意: n个人,拆成若干个队。设x等于队里每个人战斗力之和,则这个队战斗力为ax2+bx+c(a,b,c已知)。求所有队战斗力总和最大多少。 题解: 方程:f[i]=max{f[j]+(sum[i]-sum[j])2*a+(sum[i]-sum[j] 阅读全文
posted @ 2016-07-09 22:24 YuanZiming 阅读(158) 评论(0) 推荐(0) 编辑
摘要: bzoj1483[HNOI2009]梦幻布丁 题意: N个布丁摆成一行,进行M次操作.每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色。 题解: 给每个颜色建一个链表。先预处理出答案,然后每次修改颜色时将两个链表合并,同时将修改后颜色对答案的贡献重新计算(如果两个节点的位置相 阅读全文
posted @ 2016-07-09 22:16 YuanZiming 阅读(271) 评论(0) 推荐(0) 编辑
摘要: bzoj2428[HAOI2006]均分数据 题意: 已知N个正整数,将它们分成M组,使各组数据的数值和最平均,即各组的均方差最小,求最小均方差。 其中σ为均方差,-x-是各组数据和的平均值,xi为第i组数据的数值和。 题解: 神奇的模拟退火算法!它是爬山算法的加强版。爬山算法是一种贪心算法,对于每 阅读全文
posted @ 2016-04-23 22:17 YuanZiming 阅读(395) 评论(0) 推荐(1) 编辑
摘要: 拿到一道题,有时候数据范围的信息量,比题面还大,有些特别的范围就相当于把正解告诉你了,所以想从现在多积累一些数据范围,如果数据范围与算法有关就记下来。 数据量: [1,20]:状压dp、强剪枝爆搜 [1,50]:需要拆点的最短路、网络流、模拟退火 [1,100]:网络流 [1,1000]:O(n^3 阅读全文
posted @ 2016-04-17 13:59 YuanZiming 阅读(149) 评论(0) 推荐(2) 编辑
摘要: 20160318 注意操作链表时除了要修改的节点的头尾指针要改,它的头尾指针指向的节点的尾头指针也要改。 注意调用函数前后变量的值(、在图中、树中的所表示的节点)是否发生了改变。 20160325 注意将int修改为long long后不要忘了读入输出语句格式字符改为%lld/%I64d。 建图时边 阅读全文
posted @ 2016-03-18 22:03 YuanZiming 阅读(122) 评论(0) 推荐(1) 编辑
摘要: bzoj1412[ZJOI2009]狼和羊的故事 题意: n*m网格,每个格子可能为狼、羊或空格。现在要在一些格子边界篱笆使羊狼分开,求最短篱笆。n,m≤100 题解: 最小割问题,建一个超级源和超级汇,然后从源点向每只羊之间连边,容量为正无穷;每只狼向汇点连边,容量为正无穷,相邻格子之间连边,容量 阅读全文
posted @ 2016-01-02 09:58 YuanZiming 阅读(209) 评论(0) 推荐(0) 编辑
摘要: bzoj2157旅游 题意: 给定有权树,支持单边权修改,路径边权取相反数,路径边权求和,路径边权求最大最小值。 题解: 用link-cut tree link-cut tree与树链剖分有些类似,都是用某种数据结构维护树链。但也有很大差异:树链剖分是依据子树节点数确定轻重边,一经确定,不能更改,所 阅读全文
posted @ 2015-12-15 22:01 YuanZiming 阅读(281) 评论(0) 推荐(0) 编辑