• 2018.5.19-20 ACM-ICPC2018 西安邀请赛 5/11 Rank40 Ag


    开场各自读题。

    Hong看了眼A急速想了个假算法..果然WA了..(以后不是一眼的签到题还是应该两人确定题意)

    看榜发现E是签到..He上了就A了..

    然后Hong发现了A的问题..和He讨论了一下..改了就过了..

    然后发现D是博弈..Hong就去推了..

    Huang发现G是简单几何..就上了..没抄版出了些问题..改了就过了..

    Hong梦游了..WA了数发D..

    He和Huang讨论了K..感觉可上就上了..

    Hong发现D的代码出现了惊人的SB错..改了就过了..

    然后Hong去吃了个汉堡..终于找回了自我..

    He和Huang卡K..和Hong讨论一下..然后就过了..

    Hong推了C..发现是个背包..就让He上了..

    然后我们处理了很久的读入..

    然后发现T了..改了一下发现RE了..好像读入出了问题..然后xjb改疯狂提交..

    然后就..时间到了啊..

    GG..

    还好校排29...

    不然真的丢人了啊..

    题解


    A


     暴力。从右向左考虑连续的1,对于连续的大于3个的1,可以使用一个 + 和一个 - 来更快的算出,这样就可以On的算出结果。

    B


    C


    DP。可以令Ki = Bi - Ai - B,即获得第二能量的利润。那么对于Ki小于0的物品,一定只取第一能量。那么只要获得>=B的价值,就能获得所有其他利润。即要寻找最小的sigma ki使得sigma ai >= B。这恰好是背包的模型。我们将ki取反,以ai为容量,做01背包即可。

    D


    博弈。考虑先手必胜态和先手可转移的必胜态。用SG函数打表或手玩可以得出,设石子数为n,x = logn,当x%3 == 0 || 1时,为先手必胜态,其中当x % 3 == 1且x != 1时,为先手可转移必胜态,即先手可以通过若干次操作转移先后手。那么,当先手必胜态石子堆数为奇数,或先手必胜态石子堆数为偶数,可转移必胜态为奇数时,Alice获胜,否则Bob获胜。

    E


    排序。若较短的n - 1条边的和大于最长边,则可以。

    F


    G


    简单计算几何。

    H


    I


    J


    K


    线段树。对于每个点,只需要保存他被更新的次数n,以及被更新的时间点和sigma ti。那么在时间T,改点询问值即nT - sigma ti + 初始值。

    用线段树或树状数组维护即可。

    吐槽


    感觉体验有点差啊..

    这C的读入..是个鬼哟..

    还疯狂发clarification..

    还有..Hong梦游了3h啊..感觉前3h几乎0贡献啊..

    真是难受啊..以后不能梦游了啊..

  • 相关阅读:
    【C语言入门教程】2.3 整型数据
    【C语言入门教程】2.1 数据类型(5种基本数据类型),聚合类型与修饰符
    【C语言入门教程】2.2 常量 与 变量
    【C语言入门教程】1.3 C语言“32个”关键字
    【C语言入门教程】1.2 函数库 和 链接
    【C语言入门教程】1.1 基本程序结构
    【C语言入门教程】目录/大纲
    【C语言】 Linux下编译提示pow未定义引用
    Linux C 收藏
    Ubuntu 14 常用“快捷键”,Ctrl + Alt + F1 进入终端,按 Ctrl + Alt + F7 回到界面
  • 原文地址:https://www.cnblogs.com/aseer/p/9071442.html
Copyright © 2020-2023  润新知