• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
AC_Artist.zig_zag
然而我依然在补题、
博客园    首页    新随笔    联系   管理    订阅  订阅
2013年4月23日
bz3112 [Zjoi2013]防守战线
摘要: 这个题挺厉害的,一道线性规划和网络流结合的经典模型。那样例来解释吧:Min->X1+5*X2+6*X3+3*X4+4*X5X2+X3≥1X1+X2+X3+X4+X5≥4X3+X4+X5≥2X1,X2,X3,X4,X5≥0我们可以利用对偶原理把它转化成标准形式:Max->Y1+4*Y2+2*Y3Y2≤1Y1+Y2≤5Y1+Y2+Y3≤6Y2+Y3≤3Y2+Y3≤4增加松弛变量,把标准形式变成松弛形式Max->Z=Y1+4*Y2+2*Y3Y2+Y4=1Y1+Y2+Y5=5Y1+Y2+Y3+Y6=6Y2+Y3+Y7=3Y2+Y3+Y8=4到这里,其实我们已经可以利用单纯形来解决了。 阅读全文
posted @ 2013-04-23 08:38 Zig_zag 阅读(1606) 评论(0) 推荐(0)
bzoj1499 [NOI2005]瑰丽华尔兹
摘要: 很容易想出O(NMT)的算法,枚举时间,然后枚举位置,转移就好了,大概是f[t][i][j]=max(f[t-1][i][j],f[t-1][i-dx[t]][j-dy[t]]+1) dx,dy表示某时刻的滑行方向。这样显然过不了,但是看到每一时间段滑行的方向是相同的,也就是只会在一条直线上转移,于是可以用单调队列维护这一条线上的最优值。当某位置是障碍的时候,这个点不能转移或者被转移,那么清空队列;当转移长度大于时间段长度的时候,当前值不合法,需要后移队首指针;当不动比队尾还要优的时候,队尾永远不可能成为最优值,那么前移队尾指针。这样枚举时间段,枚举位置就可以了,O(NMK)。adv1900 阅读全文
posted @ 2013-04-23 07:50 Zig_zag 阅读(425) 评论(0) 推荐(0)
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3