如果 B B B 中有 x , y x,y x,y ,那么由于 B B B 中的数都不超过 n / 2 n/2 n/2 ,所以对于长度为 x − y x-y x−y 的数列也是可以翻转的。

根据辗转相减,我们可以知道 gcd ⁡ ( x , y ) \gcd(x,y) gcd(x,y) 是可以任意翻转的。

因此,我们只需要考虑翻转 g = gcd ⁡ ( b 1 , b 2 , ⋯ , b m ) g=\gcd(b_1,b_2,\cdots,b_m) g=gcd(b1​,b2​,⋯,bm​) 的长度。

然后就是基操,把下标按照 g g g 的余数分组,并且对每个数设状态,有/无反转为 1 / 0 1/0 1/0 ,我们发现每次翻转都会使得每组的异或值都改变,故所有组的异或值都是一样的。

因此我们设 f i , 0 / 1 f_{i,0/1} fi,0/1​ 表示前 i i i 个数中,和 i i i 同一组的异或值为 0 / 1 0/1 0/1 ,和 i i i 同一组的值的和的最大值是多少,故答案为 max ⁡ ( ∑ i = n − g n − 1 f i , 0 , ∑ i = n − g n − 1 f i , 1 ) \max(\sum_{i=n-g}^{n-1}f_{i,0},\sum_{i=n-g}^{n-1}f_{i,1}) max(∑i=n−gn−1​fi,0​,∑i=n−gn−1​fi,1​) 。

CF1630D Flipping Range相关推荐

  1. CF1631F. Flipping Range dp **

    link dp, 2400,非常妙的一道题目 类似这种每次操作都是对连续 k k k 位进行的不妨用对位置取模的dp 题意 给定数组 a a a 和集合 B B B,你可以进行如下操作任意多次(可以为 ...

  2. CF #768 F.Flipping Range

  3. Codeforces Round#768(Div.2)A-F

    A. Min Max Swap 题意 给定两个数组a.b,可以任意的交换ai .bi.使得max(a1,a2,-,an)⋅max(b1,b2,-,bn) 的值最小 题解: 1.从全局来考虑,由于只是改 ...

  4. Unity中实现翻书效果——Book Page Curl Pro插件

    一:效果演示 二:介绍 --插件下的Scripts文件夹下有四个脚本 BookPro脚本是挂载到BookPro预制体上的,最最重要 Auto Flip脚本是实现自动翻页或者按钮翻页的扩展脚本 Page ...

  5. [转]python各模块的学习

    [-] 01 关于本书 02 代码约定 03 关于例子 04 如何联系我们 1 核心模块 11 介绍 111 内建函数和异常 112 操作系统接口模块 113 类型支持模块 114 正则表达式 115 ...

  6. Codeforces Round #191 (Div. 2) A. Flipping Game【*枚举/DP/每次操作可将区间[i,j](1=i=j=n)内牌的状态翻转(即0变1,1变0),求一...

    A. Flipping Game time limit per test 1 second memory limit per test 256 megabytes input standard inp ...

  7. CF 327A - Flipping Game

    A. Flipping Game time limit per test 1 second memory limit per test 256 megabytes input standard inp ...

  8. Flipping Game(暴力或贪心)

    Flipping Game(暴力或贪心) Iahub got bored, so he invented a game to be played on paper.He writes n intege ...

  9. Go 知识点(06)— for range 切片并对切片进行 append 不会造成死循环

    想想下面代码会发生什么? func main() {a := []int{1, 2, 3}for _, v := range a {a = append(a, v)fmt.Println(" ...

最新文章

  1. JVM的垃圾回收机制详解和调优
  2. log_softmax与softmax区别
  3. 人工智能算法_人工智能的灵魂——算法
  4. python入门到精通需要学多久-廖雪峰python教程要学多久-零基础学Python需要多久...
  5. 2.12.ECMAScript--运算符
  6. 简单实现一边固定,另一边自适用
  7. 追求极简:Docker镜像构建演化史
  8. java url参数转换:_提示:通过URL激活并发送参数
  9. Web产品的交互说明文档应该怎么写?
  10. c#之using关键字
  11. [詹兴致矩阵论习题参考解答]习题1.13
  12. Android游戏开发中使用Libgdx引擎遇到的问题及解决办法汇总
  13. 2022程序猿生产力软件推荐
  14. 【嵌入式技术】Atmega128串口详解
  15. rabbitmq 消息确认机制ACK
  16. Easyui 官网网址
  17. 恢复误删excel工作薄中的表格
  18. dnf加物理攻击的卡片有哪些_dnf物理攻击宝珠_dnf2019物理攻击宝珠大全_快吧游戏...
  19. 关于WIN10系统无法打开CHM文件
  20. redis切换db方法

热门文章

  1. Python面向对象(全套)
  2. 转码日记:3days
  3. 跑鞋东东-上海ASICS
  4. 使用nginx进行裸域名的跳转
  5. 脚手架工程发布与使用
  6. Windows下的自动定时执行方法 - 定时执行专家
  7. C# Access中OLE对象的操作
  8. 【NLP】Python中文文本聚类
  9. (一)页面跳转的四种方法及页面跳转中相对路径问题
  10. GB28181 实时视频点播流程