• Codeforces Global Round 11 E Xum


    题意

    cf

    做法一

    以下均在二进制意义下进行

    定义1:令(x^1)(x)去掉最高位的数,(x_1)(x)去掉最低的(1)及后面一截的数

    (1101100^1=101100)(1101100_1=1101)

    定义2:令((x,y))为数(x,y)拼接后形成的数
    定义3:令(|x|)为数(x)的位数

    令给出的数为(x),考虑每次去掉最高位为(1)的,即生成(2^{|x|})
    ((x,0 imes |x|-1))
    ((x_1,0,x^1))((x,0 imes |x|-1)oplus x)
    ((x_1<<1,x))((x_1,0,x^1)+(x,0 imes |x|-1))
    ((x_1<<1,0 imes |x|))((x_1<<1,x)oplus x)
    ((x,0 imes |x|))((x,0 imes |x|-1)<<1)
    (2^{|x|+1})((x_1<<1,0 imes |x|)oplus(x,0 imes |x|))

    利用(2^{|x|+1})((x,0 imes |x|-1))的一些高位取掉,只留下(2^|x|)

    做法二

    (x)为初始给出的奇数,显然通过(O(logn))次可以表示出(nx)
    (e)为最大的(2^e<x)
    结论1((x,(2^ex)oplus x)=1)

    证明:
    (2^ex=2^ex+x-2^{e+1})

    结论2:存在(a,bge 0)(ax-by=1)其中(b)为偶数

    证明:
    根据裴蜀定理一定存在(a,bge 0)(ax-by=1)
    (b)为奇数,则将(b)加上(x)(a)加上(y)

    由于(ax,byge 0,2|by)(ax-by=1),所以(axoplus by=1)

  • 相关阅读:
    海量数据处理
    mysql数据导出
    手机归属地
    如何正确合理的建立MYSQL数据库索引
    Java 复杂excel报表导出
    NullpointerException真的一定要被预防?
    代码传递信息方式的探究
    ThreadLoacl的反思
    Codis分布式锁
    spring mvc:事务引起的try/catch失效
  • 原文地址:https://www.cnblogs.com/Grice/p/13809193.html
Copyright © 2020-2023  润新知