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

    A. 数(number)

    对于 $n$ 为偶数,容易发现确定一半就行了,答案为 $10^{frac{n}{2}}$。

    对于 $n$ 为奇数,列式子可以发现形如 $sum 2x_i = sum 2y_i +y_{mid}$。

    一步很神的操作是,把 $y_i$ 转化为 $9-y_i$,于是可以提到左侧。

    原式转化为 $sum 2x_i + sum 2y_i=9k+y_{mid}$ ,枚举 $y_{mid}$ 的取值,于是是一个插板法+二项式反演。

    B. 序列(sequence)

    可以考虑首先构造出最优策略的代价。

    显然可以对奇数和偶数分别考虑,于是发现代价就是把每个奇数权值按照先后顺序依次分配到每个奇数位置上。

    考虑怎样的操作,可以使总代价不变的前提下,字典序更小。

    可以发现这样的操作就是两个移动区间有交集的数更换了目的地。

    不妨给每个奇数确定一个移动的方向,发现有交集其实一定意味着移动方向相同。

    于是分别考虑每个移动方向相同的连通块。

    如果奇数都向左指,每次都是一个奇数位置选择最小的合法的奇数。

    可以转化为一个括号匹配问题,即依次对每个左括号次选择最优的合法的右括号。

    然后发现合法的右括号位置显然是一个连续区间,所以二分答案然后用线段树维护括号序列匹配数来支持查询就好了。

    对于奇数都向右指,直接搞个堆不断维护最小值即可。

    对于指向自己,选择是唯一的,即不进行移动。

    这样的复杂度是两个 $log$ 的。

    一个很神仙的做法是,对于奇数向左指的情况。

    反向建一个堆,每次遇到一个位置都取出堆中最大的元素。

    C. 烤仓鼠(hamster)

  • 相关阅读:
    搭建家庭无线Adhoc网络
    IPv4到IPv6的过渡技术
    IPV6的安全性
    IPv6技术简要解析
    安全删除和恢复文件的脚本
    什么是 WPS(WiFi Protected Setup)
    华为:IPv6过渡技术中的探索
    IPV6地址设置及使用方法
    部分IIS日志参数名称解释
    《隐秘的角落》
  • 原文地址:https://www.cnblogs.com/skyh/p/12570703.html
Copyright © 2011-2022 走看看