• 第十四届华中科技大学程序设计竞赛决赛同步赛


    第十四届华中科技大学程序设计竞赛决赛同步赛

    A Beauty of Trees 思维,带权并查集

    题意:
    长度为 n 的序列,没告诉你具体数是多少。只给出 m 个查询,表示区间 [l,r] 的异或和为 k 。但是第 i 个查询如果和前面的查询有矛盾,那就是错误的。输出所有的错误查询。
    tags:
    对于一个查询,我们知道 sum[r] ^ sum[l-1] = k 。 建成图就是 r -> (l-1) ,但要快速地求出异或值,就要用带权并查集处理。如有 sum[r]^sum[l-1]=k,即 r 的祖先向 l-1 的祖先连了一条 sum[r]sum[l-1]k 的边。
    代码:https://paste.ubuntu.com/p/CczHkGTR3f/

    B Trees on Sale 思维

    题意:
    给出 n、k ,问至少要多少个正整数才能相加组成任意 n 个 <=k 的数。 比如 n=3, k=4,至少要 1、1、1、2、2、3、4 这 7 个数。
    tags:
    真的搞不懂这种题 -`-
    结论:假如当前的数和为 sum,当前优先加入的数就是 sum/n+1 ,直到 sum>=n*k 。

    E A Simple Problem 字符串hash

    题意:
    给出 n 个数,每个数是 [0,k) 区间内的数,然后给出 m个数,每个数也是 [0,k) 区间内的。k<=11。这 m 个数可以改成 [0,k) 内的任意的数,但原本相同的数改完后还要相同,原本不同的数改完后也要不同。问 n 个数里,有多少个长度为 m 的区间可以是由这 m 个数变过来的。
    tags:
    直接 hash 怼过去。。 枚举 m 个数,然后快速确定 hash 值,看两个是否一样即可。
    队友拍了这个题,就懒得拍了。。 http://www.cnblogs.com/Noevon/p/9007681.html

    F Beautiful Land 背包

    签到题,看数据范围,转一下,求价值的最小体积。

    G Cards Game 思维

    题意:
    n 堆牌,每张牌有个分数,两个从轮流选一堆取一张牌,但先手只能取最顶上的那张牌,后手只能取最底下那张。两人都想使自己的分数尽可能大,问最后两人的分数分别是多少。
    tags:
    官方题解:可以发现对于偶数牌数的牌堆,最终肯定会被两名玩家对半拿完,对于奇数牌数的牌堆两侧同样被平分拿完,对于奇数牌堆的中间牌,会从大到小轮流被A,B拿完。
    其实不是很理解为啥一定是这样的-_-

  • 相关阅读:
    java实现人民币金额大写
    java实现人民币金额大写
    java实现取球博弈
    java实现取球博弈
    java实现取球博弈
    java实现取球博弈
    java实现取球博弈
    java实现平面4点最小距离
    windows下进程间通信的(13种方法)
    利用消息机制实现VC与Delphi之间的通讯(发送自定义消息)
  • 原文地址:https://www.cnblogs.com/sbfhy/p/9003836.html
Copyright © 2020-2023  润新知