• ZJOI2020


    Day1

    T1

    给定一个由字符 ( ext{'a', 'b'}) 构成的字符串 (str)
    一个串为好串的定义是:串长为偶数,且左右两半相等。比如说 (abcdeabcde) 就是好串。
    (q) 次询问,询问区间 ([l,r]) 内有多少个本质不同的好串(也就是一模一样的好串只算 (1) 次)。
    (1le n,qle 2 imes 10^5)

    T2

    给定一颗广义线段树,读入按中序遍历的方式告诉你每根线段 ([l,r])(mid) 值。
    你需要执行 (k)选区间 操作,每次等概率选择一个区间 ([ql, qr]) 满足 (1le qlle qrle n) ,并且相应在线段树上打懒标记。
    对于每个区间 ([ql, qr]),执行 ( ext{modify(1, 1, n, ql, qr)})

    void pushdown(int u) {
      if (tag[u]) {
        tag[lson[u]] = 1;
        tag[rson[u]] = 1;
        tag[u] = 0;
      }
    }
    void modify(int u, int l, int r, int ql, int qr) {
      if ([l, r] ∩ [ql, qr] = 空集) return ;
      if (ql <= l && r <= qr) {
        tag[u] = 1;
        return ;
      }
      int mid = 读入的 mid 值;
      pushdown(u);
      if (ql <= mid) modify(lson[u], l, mid, ql, qr);
      if (qr > mid) modify(rson[u], mid + 1, r, ql, qr); 
    }
    

    请求出期望下线段树中 (tag) 值为 (1) 的线段的个数。
    (n)(10^5) 级别, (1le kle 10^9)

    T3

    给定一个长度为 (n) 的序列 (a_1,a_2,...,a_n),你可以执行以下三种操作:

    • 选择一个区间 ([l,r]) ,让区间内的数全减 (1)
    • 选择一个区间 ([l,r]) ,让区间内下标是奇数的数全减 (1)
    • 选择一个区间 ([l,r]) ,让区间内下标是偶数的数全减 (1)

    你需要最小化你的操作次数,使得所有数变成 (0)

    Day2

    T1

    (Alice)(Bob)树/基环树 上的游戏。。。
    题面有点长,咕咕

    T2

    给定 (n) 个数 (a_1,a_2,...,a_n) ,每次等概率选择一个数(选过的数下次可能还会被选)。
    问期望下取多少次数,才能出现 (k) 个连续的数(也就是满足 (a_{i_1},a_{i_2},a_{i_3},...) 依次 (+1))?
    (1le nle 2 imes 10^5, 1le a_ile 10^9)(好像)

    T3

    给定 (n) 个方程组,参数 (a_i,c_i)

    [egin{cases}a_1 imes x + p_1 equiv c_1 (mod p) \ a_2 imes x + p_2 equiv c_2 (mod p) \ ... \ a_n imes x + p_n equiv c_n (mod p) end{cases} ]

    给出一个扰动 (err) ,每个 (p_i) 均为 ([lceil - frac{err}{2} ceil, lceil frac{err}{2} ceil]) 内随机的一个数。
    你需要找到一个 (x) ,使得它满足上述所有条件。
    数据保证有且仅有一个 (x) 满足条件。
    (n=2000, 1le a_i,c_i,ple 10^{18})
    如果要用 ( ext{__int128}) ,请手写。

  • 相关阅读:
    Leetcode-113 Path Sum II(路径总和 II)
    Leetcode-946 验证栈序列(Validate Stack Sequences)
    Leetcode-945 Minimum Increment to Make Array Unique(使数组唯一的最小增量)
    UVa-10129 Play on Words
    UVa-10305 Ordering Tasks
    UVa-816 Abbott's Revenge
    UVa-1103 Ancient Messages
    种子填充(flood fill)
    内存池
    Leetcode-942 DI String Match(增减字符串匹配)
  • 原文地址:https://www.cnblogs.com/wlzhouzhuan/p/13172878.html
Copyright © 2020-2023  润新知