zoukankan      html  css  js  c++  java
  • 省选模拟52 题解

    A. 图

    两个二分图,可以直接对应出一个四分图来。

    第二个操作要求连通性,所以可以考虑先生成一棵树,这棵树显然是二分图。

    对于剩下的边,考虑是否形成二分图。

    如果能够形成,那么可以对应出合法的四分图。

    如果不能,那么说明剩下的边中存在奇环。

    因为树边已经连通了,所以这个奇环是合法解。

    B. 数列

    第一个包考察阅读理解,第二三个包发现搞一个类似进制数的东西就可以一次交互回答多个询问。

    第四个包比较麻烦。$n=16$ 似乎可以先每次处理两个询问。

    那么显然分别分配权值 $1,10^{49}$,这样的话第一个数的低位确定了,但是最高的几位是模糊的,第二个数的全局都是模糊的。

    考场上想到了这里,然后没继续想下去。

    其实询问的结果不一定要直接拿下来用,可以做一些加减操作。

    如果我们得知了第一个数的最高位,那么第一个数和第二个数都可以简单求出。

    同理得知第二个数的最低位也行,后者实现更加简单。

    还剩下了两次询问,那么每次得知四个数的最低位就行了。

    实现方法就是分配权值 $1,10^{10},10^{20},10^{30}$。

    依次解出,把这个数在当前的贡献也消掉,就可以继续操作。

    C. 走路

    容易发现最优策略是回来的时候再吃食物。

    然后问题是一个简单的背包,但是状态数有点多。

    然后发现在位置比较远的地方,如果吃了很多东西就回不来了。

    所以可以发现状态数可以压到调和级数级别,复杂度就对了。

  • 相关阅读:
    eclipse如何运行maven项目
    node.js的ejs模版引擎
    java中?和A、B、T、E、K、V的区别
    public static <T> Map<String, T> json2map
    Session深入理解
    maven指定构建的编码格式
    Effective java-泛型思维导图
    Effective java-枚举和注解思维导图
    java编程思想-泛型思维导图
    java编程思想-枚举类型思维导图
  • 原文地址:https://www.cnblogs.com/skyh/p/12548688.html
Copyright © 2011-2022 走看看