• Codeforces Global Round 17


    solved: 1/9

    C:

      考虑二分答案, 假设我们知道序列的长度len, 那么对于在队列里的元素, 他的位置可以在[len - ai, bi + 1]之间。

      因为每个人有i元, 那么后插入的肯定是比先插入大的, 如果新插入的数的位置now在[len - ai, bi+1]之间, 那么now++, now从1开始。

      如果now比len长, 那么就是len就是可以构造出来的。


    补题: 4/8

    A: 

      询问左下角和右下角肯定能知道这个点在哪里(1, 1) (n, 1)

      假设点是(x, y) 那么第一次询问的dis1 = (x-1)+(y-1)

      第二次询问的dis2 = (n-x)+(y-1)

      那么dis1-dis2 = n - x - x + 1 = n+1-2x, 可以把x算出来

      代入dis1/dis2就可以算出y

      所以最多2次, 然后如果x肯定是1, 即min(n, m)=1的时候, x是确定的

      假设n=m=1, 那么我们不用询问就能知道x,y在哪里

      所以这题做完了

      我也不知道自己为什么会去求log

    B:  

      在s[l]==s[r]的时候, 这两个端点是可以保留的

      先把原串跑到两个端点不相等, 即s[l]!=s[r]

      然后要么删掉s[r]要么删掉s[l], 答案只能是这两个

      因为如果不删这两个中的一个的话, 肯定不满足s[l]==s[r](回文)

      那么再O(N)扫两遍就成了

      

    D:

      考虑怎样是有解的

      首先, 有奇数的肯定是合法的, 因为总能使得序列沿着0对称

      所以只需要考虑偶数的东西

      假设第i个数的起点为xi, 那么他对和式的贡献是$\frac{b(2x+b-1)}{2}\ =\ xb+\frac{b(b-1)}{2}$

      怎么判断一个大小为n的序列是否合法, 当且仅当$0=\sum_{i=1}^n \frac{b_i(b_i-1)}{2} + x_ib_i$

      等价于$\sum_{i=1}^n \frac {b_i(b_i-1)}{2} = \sum_{i=1}^n x_ib_i$

      左边这部分是确定的, 设为$s$, 那么这个方程组有解当且仅当s是$gcd(\{b_1..b_n\})$的倍数(裴蜀定理)

      所以我们已经知道怎么判断了...合法/不合法了

      我们只考虑有偶数的序列${A}$,  先把所有的数/2, 在当前序列中的奇数倍中挑选奇数个, 其他的偶数中不管怎么挑, 此时$\sum_{i=1}^n \frac {b_i(b_i-1)}{2}$肯定是一个奇数, 肯定不是2的倍数

      循环往复到结束即可

      当没有奇数可以选时, 肯定是合法的, 因为此时的sum肯定是2的倍数

    E:

      题目要求任意一个子序列都得满足小于average的数量严格大于average的数量

      在原序列中插入一个数x, 当且仅当{c1, ci, x}是满足条件的

      而{c1, ci, x}是满足条件的当且仅当{c1, cn, x}是满足条件的

      而{c1, cn, x}是满足条件的当且仅当$cn\leq \frac{x+c1}{2}$

      这个数x可以通过二分查找来找到

      可以发现如果有一片的x, x, x, x…, 那么我们只需要把前面的一坨都选了, 后面的不用判断(因为包含在原序列里)

      而对于ai不相等的序列中, 每次至少让x比an多an-a1, 也就是说每个数平均跳$log_2A_i$步

  • 相关阅读:
    持久层框架:MyBatis 3.2(2)
    持久层框架:MyBatis 3.2(1)
    循环结构(二)
    Android LayoutInflater详解
    为什么调用 FragmentPagerAdapter.notifyDataSetChanged() 并不能更新其 Fragment?
    Android Support v4、v7、v13的区别和应用场景
    Android的string-array数据源简单使用
    FragmentTabHost切换Fragment时避免重复加载UI
    Ubuntu 安装Chrome步骤
    慢慢来,让好习惯自然来
  • 原文地址:https://www.cnblogs.com/gllonkxc/p/15598796.html
Copyright © 2020-2023  润新知