zoukankan      html  css  js  c++  java
  • 联考day6

    A:过河

    贪心
    每次都让蛤尽可能向后跳
    每次都跑就可以了
    如果用vector会T掉
    set就可以A掉

    还有一种O(n)算法
    考虑上面的构造
    如果将所有蛤一起考虑
    就类似于一个滑动窗口
    开一个队列
    每次都让最后面的蛤跳到前面
    如果跳不到前面就直接扔掉
    时刻维护队列元素个数最小值
    最后跳到对岸后 就是答案





    B:选数

    Trie树
    容易看出小r的操作就是将x左移一位 如果高位溢出就在低位补全
    假定小r在i时使用技能
    小r的操作其实可以转化为将i之前的所有操作及初始的x都左移一位
    因为位运算不会进位 所以是对的
    枚举小r在什么时刻进行操作
    发现操作序列只有m+1种
    把操作扔到Trie树上
    但是和普通Trie树不一样的地方是
    这里类似于给定操作序列 求原数

    考虑当前的操作序列其实是小r掌握的
    即无论选多少 小r可以选择向左或者向右
    所以如果在某个节点 有0 1 两个儿子
    那么该节点对答案就没有贡献
    因为无论选多少 小r都会使更劣的一方走
    但是如果在某个节点只有一个儿子
    那么只要原数是儿子的对立面
    那么异或之后显然还是可以对答案造成贡献的
    因此统计答案就显然了
    每次到达叶子节点 记录下当前的答案
    如果大于ans 就把ans更新 cnt置为1
    等于ans就让cnt++




    C:数列




    D:模板




    如初见 与初见
  • 相关阅读:
    Redis操作命令大全
    Redis实用监控工具一览
    Redis缓存雪崩、缓存穿透、缓存击穿、缓存降级、缓存预热、缓存更新
    Redis GEO地理位置信息,查看附近的人
    详解redis持久化
    详解Supervisor进程守护监控
    详解Redis Cluster集群
    arduino使用rfid
    树莓派控制WS2812
    Arduino读取温湿度dh11+烟雾气体MQ2+彩灯ws2812
  • 原文地址:https://www.cnblogs.com/HISKrrr/p/13849064.html
Copyright © 2011-2022 走看看