自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zzyzzy12

大数据搬砖狗...

  • 博客(28)
  • 资源 (1)
  • 收藏
  • 关注

原创 最大流模板更新(Dinic)...POJ-1273

明天就要出发去武汉了..刚才更新了下最大流的模板...较之以前的代码..本次更新主要是两方面...     1.链表存边采取存2*M边,也就是在读入时就将其反向边开在相邻的位置..那么在做剩余网络时就能直接用了..省空间省时间..     2.DFS当找到一条增广路后..回朔到一个还剩了流量的位置..这使得BFS每次对点分一次层,都最大限度的利用完..真正体现出Dinic的优势..

2012-04-26 19:44:12 894

原创 CodeForces Round #117 (182D) - Common Divisors

昨晚的比赛以为是23:00开始的..能水半个多小时..结果是0:00..就没参加了..今天看第一名是Watashi..去年WordFinal冠军巫泽俊..Orz...刚才刷了两道水题..B题那也太水了..本题也就是利用了KMP中Fail数组的性质...       见代码就好...Program:#include#include#include#include#incl

2012-04-25 22:02:36 1038

原创 CodeForces Round #116 (180E) - Cubes

昨天第一次做CF的contest...昨天的Easy题目刷了5道回去睡了..今天的比赛开始还是很顺利的..唰唰两道大水题很快AC..但就没有然后了...A题我看了下没看懂..就专攻E题..比赛结束后才做出来...       本题看数据范围..就只能是O(n)或者O(nlogn)的算法..所以不可能是DP..而O(nlogn)也找不到要二分的理由..所以这题的思路应直奔O(n)的算法...既然

2012-04-22 20:00:12 881

原创 POJ-2112 Floyd+二分枚举+最大流(or 匈牙利)

先根据题目所给的邻接矩阵跑一次Floyd..得到两两间的最短距离...这里要注意题目中所说的两点距离为0是两点间无法直接到达..so..输入时就判断重新赋值好了..但这里也要注意..由于两两间的间接距离最大可能为30*200*200=1200000..所以赋值一个>1200000才是...我就这里没注意WA了好几次...       跑了Floyd将所有machine与cow的边提出来...排

2012-04-21 09:59:36 818

原创 sha崽的AC自动机专项练习AK!!

至此 sha崽的AC自动机专题(http://www.notonlysuccess.com/index.php/aho-corasick-automaton/) All killed了...呕心沥血...所有题目本人解题报告及AC代码:       Keywords Search               病毒侵袭               病毒侵袭持续中

2012-04-19 23:20:48 1433 1

原创 HDOJ-3427 & ZOJ-3190 Resource Archiver AC自动机压缩状态DP..

先用resources和virus构造出AC自动机..       本题最暴力的状态是很好想到的...dp[a][b][c]...代表a长度时某串后缀能到AC自动机点b..能得到c些resources..其中c是一个用十进制表示的二进制数..代表题目里最多10个resources的存在情况...可见此种dp..状态最多可为10000*60000*1024...爆空间爆时间..各种爆..爆得体无

2012-04-19 23:16:04 1582

原创 HDOJ-3065 AC自动机..题意大丈夫?

坑爹的题意...明明说了第一行怎么怎么..接下来N行怎么怎么...搞半天是多组Case..这不忽悠人么!!       先用病毒传构造AC自动机..再遍历网站源码...当走到一点,从这点不断fail直到头接点..路径上所有点的经过次数++..Program:#include#include#include#include#include#define oo 20000

2012-04-19 22:52:38 999

原创 HDOJ-2896 AC自动机基本操作

对sha崽AC自动机专项练习的扫尾...本题确实是比较卡空间啊...我是试次空间了几次才过的...囧..      这里的ASCII码是0~127的...用病毒传构造AC自动机..进一步构造Trie图...再通过Trie图遍历所有网站编号..记录统计即可..Program:#include#include#include#include#include#define

2012-04-19 22:14:51 1195

原创 ZeroJudge-b179 空罐 Cans 可爱的AC自动机DP..

http://zerojudge.tw/ShowProblem?problemid=b179     咩哈哈哈哈..这个只有29个人出的题俺整出来了...网上似乎还木有解题报告的说...我就来做第一个吧...     这种关于包含病毒就要不得的问题很明显的要用到AC自动机...不管三七二十一..先根据所有病毒串做好AC自动机以及Trie图...     本题的状态可以用dp[t][

2012-04-19 12:53:06 1697

原创 2012中南大学校赛F题 - 旋转卡壳的思维...

http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1165       当时做计算机几何的时候也没练过旋转卡壳...对于一类求最小满足条件的区间问题..这种思维是很重要的...       就如同本题...实际上就是要使得从a,b,c中取出的数尽量靠近.. 题目所给的a,b,c已经有序...用三个指针x,y,z来记录当前所在a,b,c的位

2012-04-17 10:13:29 1746

原创 2012中南大学校赛D题 - 很好的思维题...

http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1163      这题首先提醒的是做除法再模一个数..分子分母分别模了后再相除是得不到正确结果的...开始这题纠结了很久..想了同余方程..甚至讨论了线段树...最后想通了还是So eazy的,      由于乘法是可以分别取模再相乘的...本题的方法和经典DP问题合唱队形差不多...算出从

2012-04-17 00:47:19 1989

原创 2012中南大学校赛H题 - 缩点最小割

http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1167    题意是说水管道有一个入口..多个出口..以及多个分流点...有些分流点之间的管道是有闸的..可以将该管道给关掉..现在有T(T    实际上就是说..从起点到终点..最少去掉多少允许去掉的边..使得起点到不了终点..不就是最小割的模型么..而最小割=最大流..so...让有闸的

2012-04-17 00:14:48 1689

原创 首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛网络预赛C题(HDOJ-4217)

这题比赛的时候是狐狸大大敲的..先用了list..结果超时了..果断树状数组A之...其实这题当年做过很类似的: POJ2828 插队排队问题..       初始所有点的值都是1..那么初始时每个点k的1~k之和a[k]就是当前数(当然做了取出操作后就不一样了...)...要取出当前第k大时..用二分夹逼找到a[h]=k的h..再将h位更新为-1.并更新树状数组..那么就相当于将>=h的

2012-04-16 14:06:41 5784

原创 首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛网络预赛G题(HDOJ-4221)

这题的题目是 贪心? 好吧..真的是贪心..只是稍微的尝试了一种方案..就过了...这种反感是将所有的项目按D排序..按这个顺序来安排工作..找到过程中最大的penalty就是..原理..只是感性的觉得先到期的工作先做比后做得到的差距要小吧...没有证明...Program:#include#include#include#include#define ll long

2012-04-15 17:52:00 4519

原创 首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛网络预赛I题(HDOJ-4223)

本题题目是 DP? 但显然解决方案不是DP...对于这一类求一区间合的题目...可以先将每个sum(1~k) 算出来...通过两个sum之差得到某一区间的值..想到这一步..本题思路就出来了..计算出所有的sum(1~k) ..对sum排序..查找sum[i]-sum[i-1]最小的...但这里要留意..对于sum..应该要有n+1个..也就是要增加一个sum[n+1]=0...Pro

2012-04-15 17:48:00 4546

原创 首届华中区程序设计邀请赛暨第十届武汉大学程序设计大赛网络预赛A题(HDOJ-4215)

比赛的时候最后时间专注1010去了..最后十分钟才想起1001应该能打表..结果没搞得赢..赛后果断AC阿...这题..好恶心..       其实对于这一类的N很大的问题..就要有大表找规律的思维..或者找到通项公式..或者找到递推关系利用矩阵乘法..而本题就是..N30...结果都是10...囧...Program:#include#include#include

2012-04-15 17:40:03 4857

原创 HDOJ-3746 利用KMP的fail数组

思路很简单了...就是利用下fail数组的性质...fail[k]的含义是s[0~k]这个字符串的后缀可以是前面哪个串.并且记录的是最长的长度...那么l=len-fail[len]就是一个最短循环节的长度了..那么l-len%l就能得到最少还要补多少位了...值得注意的是       1.fail[len]本身为0..特判: 直接补len位       2.len%l==0..那么答案是

2012-04-14 11:42:17 1236

原创 HDOJ-1271 换个思维就简单多了...

老早就尝试过这题..结果枚举方式不是很简洁...写起来各种蛋疼..昨晚听了惊奇哥的讲解就果断水了...     设B=Bn,Bn-1,...B2,B1   枚举是再哪个位置插入了个位数k...比如枚举是第i位后面插入了个位数k..那么得到的                          N=11*(Bn,Bn-1,...Bk+1)*(10^(i+1))+k*(10^i)+2*(Bk-1

2012-04-14 09:46:35 1162

原创 HDOJ-3341 好BT的AC自动机...T_T

好不容易空间卡时间过了...T_T.....           题意是给出N(      用所有模式串构造AC自动机...      然后就DP吧...状态为dp[k][p]...代表AC自动机中点k..所构成'A'..'C'..'G'..'T'.个个数情况为p时所能得到的最多模式串...而这个状态表示方法最大的问题就是如和来表示p...最朴素的就是用[40][40][40][4

2012-04-13 15:17:45 1126

原创 ZOJ-3288 AC自动机

用模式串构造Trie树..用Trie树构造AC自动机...用AC自动机构造Trie图...为了在一个Trie图中能同时处理overlap 和 not overlap的情况..每个节点就要有两个计数器..          overlap的计数器point[h].w[0]很好处理...就是普通的Trie图遍历目标串..到达一个点h..其point[h].w[0]++并且其所有Fail到0的点的w

2012-04-11 21:05:25 1045

原创 HDOJ-2296 AC自动机+DP..一定要细心..

构造Trie树..通过Trie树构造AC自动机..再通过AC自动机构造Trie图...        本题DP的状态为dp[k][p].w 代表当字符串长度为k时..以头节点到p点为后缀的串所能得到的最大权值...同时用dp[k][p].s来存这个k长度的串..状态转移方向为Trie图中有向边的方向..显然k长度的状态只于k-1的状态有关..所以可以用滚动数组来存储dp状态..

2012-04-09 18:41:21 1005

原创 HDOJ-2825 AC自动机DP+位运算..

题目是要求最少出现k种模式串...开始我看成k个了..囧..k种的话可以用2^k-1的整数可以描述出模式串出现的任意情况...也就是将每个模式串出现否看成二进制的1,0...题目中模式串最多10个..所以模式串存在状态最多1023种...     先用AC自动机构造Trie图...这个已经很模板很模板了..值得注意的是在构造时给每个点我称为data的值..代表从0点出发到这个点的串的后缀子串能

2012-04-08 20:10:37 1267

原创 POJ-1625 & ZOJ-1540 & Ural-1158 AC自动机+DP+大数..

AC自动机的DP...每个节点是状态..每条边是转移方向..其实这题和 POJ-2778 DNA Sequence  是一回事..只是这题是高精度..并且数据范围没那么大..所以使得直接DP的效率从时间和空间上都远远高于了用矩阵乘法...囧..      其实准确的说这题所构造的图不是AC自动机而是Trie图...为了DP转移时更加方便..把节点没有的孩子赋值为其fail点的这个孩子...这样

2012-04-05 23:01:24 2530

原创 HDOJ - 2238 机器人的舞蹈II

清明去乡下扫了一圈墓~~回来把这题A了...首先说一下这题和HDOJ-2232的区别...这道题描述上和2232的区别就是本题的机器人是一样的...2232里的机器人是不同的...那么造成的区别在于转移的时候差别...如有      4   0                  2   2                                         (1,2)  (3,4)

2012-04-04 13:38:31 1297

原创 HDOJ-2232 误打误撞..构造矩阵..

其实我是在做HDOJ-2238 机器人的舞蹈II 的...构造好矩阵再用矩阵连乘得到结果..结果一直WA...后来发现了2232和2238的描述几乎一模一样..就往2232交..结果就AC了..很蛋疼啊...不清楚机器人相同和机器人不同到底有何区别...     回到这题..关键就是构造矩阵...这里实际上就是要构造各个状之间态经过一次转移能转化的方式数..用搜索就能打出一个8*8的表了...

2012-04-03 02:58:03 1153

原创 POJ-3420 回顾矩阵乘法解递推.再次提醒自己矩阵木有交换率.

HDOJ-1992的升级版(http://blog.csdn.net/kk303/article/details/7364139)..先推出递推公式(其实那时候我做1992这题没推出递推公式..只找到了规律打了个表..囧.刚才重新整理了一下得出递推公式...)..然后再用矩阵乘法求解..递推公式为:                    T [ n ] = T [n-1]+5*T[n-2]+T

2012-04-01 17:35:09 1715

原创 POJ-3735 线性变换构造矩阵

可以根据题目中所给的每轮操作来构造矩阵.. 自己构造的....结果WA了好几次..后来才发现当是s i j 时,应该将i列和j列整个交换...我自己开始时只交换了s[ i ] [ j ] 与 s [ j ] [ i ] ...囧..为了能做出加法运算..构造出的A矩阵是n+1维的..并且初始值矩阵也是n+1列的={0,0,0,...1} ..关于几种操作构造矩阵的方法.程序里体现得很清楚了..

2012-04-01 11:59:01 1326

原创 POJ-1977 很好的矩阵乘法题..

题目是说有N面点师..每个面点师又有一些自己欣赏的面点师..每一轮的庆祝有投票权的面点师讲给自己所欣赏的所有面点师标记一笔.而当轮的投票权是说前面所有庆祝下来当前面点师的所得标记数总和为奇数时才有资格投票..题目最终是问在第t轮庆祝时,哪些面点师能够投票...值得注意的是题目初始是从第一天开始的..也就是初始的票数是第一轮的票数..若题目要求出第一天的投票权情况..就是输入的奇偶情况..第二天的.

2012-04-01 02:35:48 1638

dd_eng神牛谈SAP

dd_eng神牛谈SAP...感觉很精辟啊...适合初学者了解SAP算法...

2011-08-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除