• Codeforces Round #177 (Div. 1 + Div. 2)


    A. Polo the Penguin and Segments

    • 模拟。

    B. Polo the Penguin and Matrix

    • 每个数字模d余数必须一样。
    • 枚举结果,可计算操作次数,取最小。

    C. Polo the Penguin and Strings

    • ababab……cdef……
    • 对于n、k分别为1时,需要特判。

    D. Polo the Penguin and Houses

    • 前k个暴力枚举,后n-k个每个可取个数为n-k。

    E. Polo the Penguin and XOR operation

    • 显然为了让结果尽量大,所以异或和应该和加法和接近。
    • 观察样例可知,结果为n(n+1),所以可猜测对于任意的n可构造出异或和n(n+1)的序列,即异或不存在两个1相消。
    • xjb证明:对于n来说,假设二进制最高位为p,则(2^{p + 1} - 1 oplus n) 显然小于n;对于n-1来说(假设二进制最高位不变),(2^{p+1}-1 oplus n - 1)会大于(2^{p+1} - 1 oplus n)。也就是([2^{p + 1}-1 oplus n, n])构成一个我们要的区间,而([1,2^{p + 1}-1 oplus n))则变成一个子问题。

    D. Polo the Penguin and Trees

    • 考虑每个点的贡献,把一个点挖掉后会形成若干棵子树,对于每个子树内的路径与经过当前点的路径必然不相交。

    E. Polo the Penguin and Lucky Numbers

    • 因为(l,r)没有前导0,即最后的幸运数字长度均为(|l|,|r|)
    • 将问题看成求([1,n])(a_1a_2+a_2a_3+…+a_{n-1}a_n)的值。
    • 长度为1时,幸运数字有4,7;
    • 长度为2时,幸运数字有44,47,74,77;
    • 记长度为(l)时,幸运数字有(a_{1}^{l},a_{2}^{l},…,a_{n}^{l}),那么长度为(l+1)时,新的幸运数字为(overline{a_{1}^{l}4},overline{a_{1}^{l}7},overline{a_{2}^{l}4},overline{a_{2}^{l}7}…,overline{a_{n}^{l}4},overline{a_{n}^{l}7})。此时是不考虑有上界的情况,有上界的情况时,最大值是前缀,且添加4、7时要根据下一位的值考虑,下一位是4时,最大值只能加4得到新的幸运数字,下一位是7时则相当于没有限制。
    • 假设(F_i=sum_{i=1}^{K_i-1}{a_ia_{i+1}})(K_i)表示幸运数字的个数。
    • (时s_{i+1}=4时)$$F_{i+1}=sum_{i=1}{K_{i+1}-1}{A_iA_{i+1}}=sum_{i=1}{K_i-1}{overline{a_i4}cdotoverline{a_i7}}+sum_{i=1}{K_i-1}{overline{a_i7}cdotoverline{a_{i+1}4}}=sum_{i=1}{K_i-1}{(100a_i2+110a_i+28)}+sum_{i=1}{K_i-1}{(100a_ia_{i+1}+40a_i+70a_{i+1}+28)}=100sum_{i=1}{K_i-1}{a_ia_{i+1}}+100sum_{i=1}{K_i-1}{a_i2}+220sum_{i=1}{K_i-1}{a_i}+70(a_{K_i}-a_1)+56(K_i-1)$$
    • (s_{i+1}=7)时,只需要加上(overline{a_{K_i}7})这项即可。
    • 为了得到(F_i),需要维护和、平方和,两个值推导与上面的类似。
  • 相关阅读:
    快速删除段落间多余的空行
    平时一些mysql小技巧及常识
    mysql中常用的控制流函数
    按年、季度、月分组&&计算日期和时间的函数
    Excel通过身份证获取出生年月,性别,年龄,生肖,星座,省份等信息总结归纳
    统计图表类型选择应用总结&表数据挖掘方法及应用
    EXCEL如何提取文字中包含的数字?
    一篇说尽Excel常见函数用法
    RStudio中,出现中文乱码问题的解决方案
    R-RMySQL包介绍学习
  • 原文地址:https://www.cnblogs.com/mcginn/p/6275589.html
Copyright © 2020-2023  润新知