• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






This_poet——Only a poet

为省队而奋斗,为NOI而奋斗!This_poet@126.com
 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理

2011年9月15日

POJ3189 Steady Cow Assignment ——二分答案+二分图多重匹配——Pku3189
摘要: 改进过后的匈牙利算法即可轻松秒掉最大流的各种NB算法。不过,这种方法有一个局限,就是右边集合可以匹配多个而左边集合只能匹配一个的时候才可以用,否则只能搞神马SAP等等了。匈牙利算法的改进:1、存储右边集合的结果时不要只存一个,而是将所有匹配结果都存下来。2、在找增广路时,把(res[k]=0)的条件改成(res[k,0]<max[k])CODEProgram Stead;//By_ThispoetConst maxn=1000;Var pre,other,last :Array[1..maxn*20]of Longint; res :Array[1..20,0.... 阅读全文
posted @ 2011-09-15 20:00 This_poet 阅读(483) 评论(0) 推荐(0)
 
后缀数组Pascal代码实现
摘要: 以前不会想,也不会写。现在会写了,也大概想明白了。后缀数组,真是个麻烦的东西。题目大意如下:给定一个长度在5000以内的字符串,求出出现过两次或两次以上的最长字串(保证唯一解)。不多说了,裸的后缀数组:Program Suffix;//By_ThispoetConst maxn=10000;Var i,j,k,m,n,p,q,ans,pos,sum :Longint; rank,sa,a,x,y :Array[1..maxn]of Longint; st :Ansistring;Procedure Qsort(l,r:Longint);var i,j,k,p,t... 阅读全文
posted @ 2011-09-15 17:54 This_poet 阅读(1224) 评论(2) 推荐(0)