zoukankan      html  css  js  c++  java
  • 省选模拟37

    A. 奶酪

      这个东西做法应该很多。

      我的做法是,直径合并,在dfs序上处理出来前后缀的直径和两个端点,询问的时候直接合并两段前缀和后缀即可。

      换根dp也是可以的,然而要记录最大值,次大值,次次大值,所以就比较恶心。

      题解的做法是,根据删掉的这条边是否在直径上进行讨论,假如不在,那么一段的答案就是直径,另一段做简单树形dp。

      否则似乎是类似的做法?

    B. 走

      一眼可以发现对于第二个串的转移是单调的,第一个串的转移图用kmp可以简单预处理出来。

      所以现在的问题就是第一个串的转移图中的环应该怎么处理。

      发现数据范围很小,直接暴力高斯消元就行了。

    C. 机

      记几个东西:

      判断一个数是否是偶数可以用$(-1)^x$来判断。

      stein算法:处理很大数最大公约数的方法,就是每次将两个数中所有的2去掉,然后两个数都是奇数时,使用$gcd(x,y)=gcd(x-y,y)$,这样一定会再次出现2的幂次,一直消掉就可以了。复杂度和辗转相除是一样的,但是在需要高精度的时候由于不用取模效率很高。

      假如需要打表但是在打出来的表上效率很低的时候,可以考虑压一压数据,比如建出来一棵搜索树。

      加法转化为原根的乘法。

  • 相关阅读:
    python常用包官网及包的安装方法
    二进制安装mysql-5.7.26
    ufw防火墙规则不生效
    Zabbix 3.0 配置企业微信报警(配置zabbix-web)
    Zabbix 3.0 配置企业微信报警(注册---测试)
    阿里云盾AliYunDun服务IO超高
    zabbix详解
    ntp时间同步
    zabbix解决中文乱码
    ssh登录服务器提示错误no hostkey alg
  • 原文地址:https://www.cnblogs.com/hzoi-cbx/p/12416424.html
Copyright © 2011-2022 走看看