zoukankan      html  css  js  c++  java
  • AtCoder Grand Contest 010

    AGC 010

    B

    差分数组 (b_i=a_{i+1}-a_i),然后观察一下 (b) 的变化,列一下条件(略)

    C

    D

    答案和奇偶性有很大的关系。如果在某次操作完后除掉了一个奇因数,并不会改变奇偶性,因此我们只考虑偶因数。

    1、有奇数个偶数,先手必胜。因为一开始 (gcd=1),所以至少有一个奇数,先手一开始让一个偶数变成奇数,(gcd) 不可能为偶,这时候至少有两个奇数,后手也不可能让 (gcd) 为偶数。之后也一样,不给对手改变奇偶性的机会。

    2、开始时有大于一个奇数,和偶数个偶数,后手必胜。先手任意操作一次都会到达情况1的状态

    3、开始有一个奇数,和偶数个偶数。先手第一次只能操作那个奇数,模拟这个过程得到新的局面(特判这个数为 (1) 的情况)。如果出现情况1、2就直接判断,出现3不断递归。显然至多递归 (log n) 层。

    E

    如果已经却确定一开始的顺序,最后的结果可以用贪心的拓扑排序来得到。现在的问题就是给一些无向边定向,使得最后的拓扑序最小,同样可以用类似的贪心完成(略)

    F

    方案Ⅰ:先考虑只有两个点的情况,然后考虑树只有两层的情况,然后推广到普通情况。进行 (n) 遍树形 (dp)(O(n^2))

    方案Ⅱ:假设当前在 (x),如果 (x) 能走到的 (y) 都有 (a_y>a_x),那么先手必输。所以它一定会往 (a_y<a_x) 的地方走(这个解释有一定问题,但结论是对的,可自行思考),往 (y) 递归下去。如果存在一个 (y) 走完后先手必败,那么当前先手必胜。能走的边构成DAG,可以直接一遍递推完成,复杂度 (O(n))

  • 相关阅读:
    SQL SERVER XML 学习总结
    Azkaban2官方配置文档
    I.MX6 Android CAN 命令行测试
    nginx 静态网站配置
    nginx php 配置
    uwsgi 配置 初试
    django 初试
    Ubuntu Nginx uwsgi django 初试
    I.MX6 天嵌 E9 U-boot menu hacking
    Ubuntu 搭建 LAMP 服务器
  • 原文地址:https://www.cnblogs.com/whx666/p/agc010.html
Copyright © 2011-2022 走看看