CF1733D2 Codeforces Round #821 (Div. 2) Zero-One (Hard Version)

cf传送门
题意
给定两个 0 , 1 0,1 0,1 a a a b b b
可以对a进行若干次以下操作:
1.对相邻的两个数取反,花费x
2.对不相邻的两个数取反,花费y
最小化花费
思路
处理出 c = a   x o r   b c=a\ xor \ b c=a xor b
问题等价于用以上操作将 c c c全部变成 0 0 0
考虑 D P DP DP f 0 / 1 , i , j f_{0/1,i,j} f0/1,i,j表示处理到 i i i c i = 0 / 1 c_i=0/1 ci=0/1 1 1 1~ i i i j j j 1 1 1
分类讨论,
根据是否操作,操作相邻的或不相邻的数,跟相同的或不同的数一起操作进行丧心病狂的 转移
手打公式麻烦,直接上图

就是有亿点点难搞

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值