Random Hash

· · 算法·理论

模型 1:给定一个长度为 n 的序列 a可以有重复元素,问:

模型 2:给定两个集合 AB,问:

模型 3:给定一个序列 a,问:

P4065 [JXOI2017] 颜色

  • 给定一个长度为 n 的整数序列,每一个数都有一个颜色 a_i

  • 定义“删除颜色 x” 为把所有的满足 a_i = xa_i 删掉。问有多少种删除颜色的方案,使得最后剩下的数形成原序列的一个子区间。

  • 例如,假设 a 初始为 \{1 ,2 ,3 ,2 ,2\},若删掉颜色 3,则变为 \{1,2\}\{2, 2\},不是一个子区间;若删掉颜色 1,则变为 \{2,3,3,2\},是一个子区间。

  • 两个方案不同当且仅当至少存在一个颜色 i 只在其中一个方案中被删去。

  • 1\leq n \leq 3\times 10^5$,$1\leq a_i \leq n

S2oj #1497 树

  • 给定一棵 n 个结点的树,树上每条边有边权

  • 给你 q 组询问,每次给定 uv,问 u \rightarrow v 这条路径上的边权是否能重新排列,形成一个回文序列。强制在线。

  • 1\leq n \leq 10^6$,$1\leq q \leq 2\times 10^7

CF869E The Untended Antiquity

  • 给定一个 n \times m 的网格。

  • q$ 次操作,每次给定三个参数 $\text{opt}$,$x_1$,$y_1$,$x_2$,$y_2
    • \text{opt} = 1,表示给以 (x_1,y_1) 为左上角,(x_2 , y_2) 为右下角的矩形围上篱笆。
    • \text{opt} = 2,表示给把以 (x_1,y_1) 为左上角,(x_2 , y_2) 为右下角的矩形的篱笆拆掉(保证这个篱笆存在)
    • \text{opt} = 3,表示查询方格 (x_1 , y_1) 和方格 (x_2 , y_2) 是否连通
  • 数据保证任意修建的两个篱笆都不相等,并且对于任意两个篱笆,要么包含,要么完全不相交。

  • 1 \leq n, m \leq 2500$,$1 \leq q \leq 10^5

ABC 250E Prefix Equality

  • 给定两个长度为 n 的数列 ab

  • q 组询问,每次询问给定两个参数 ij,询问 a_1 \sim a_i 排序去重后形成的序列 A,是否等于 b_1 \sim b_j 排序去重后形成的序列 B

  • 1\leq n \leq 2\times 10^5$,$1 \leq q \leq 2\times 10^5
  • 考虑模型 2,给每一个在 a 或者 b 出现过的数随机赋一个 0\sim 2^{64} - 1 的权值。

CF1418G Three Occurrences

给定一个长度为 n 的序列 a

问有多少个子区间满足:所有数都 恰好 出现了 3 次。

1 \leq n \leq 5 \times 10^5$,$1 \leq a_i \leq n

P8819 [CSP-S 2022] 星战

  • 给定一张 n 个点 m 条边的有向图

  • 给定 q 个操作,首先给定一个参数 t 表示操作类型:

    • t = 1,表示摧毁一条边 u\rightarrow v,数据保证这条边存在。

    • t = 2,表示摧毁所有指向 u 的边 v \rightarrow u

    • t = 3,表示恢复一条边 u \rightarrow v,数据保证 u \rightarrow v 这条边已经被摧毁。

    • t = 4,表示恢复 最初 所有指向 u 的边 v \rightarrow u

  • 每次操作后,请判断当前的图是否是一个内向基环树森林。如果是输出 YES,否则输出 NO

  • 1\leq n \leq 5\times 10^5$,$1 \leq q \leq 5\times 10^5

CF1746F Kazaee

给定一个整数序列 a,有 q 次操作,每次操作有两种类型:

  • 把某一个位置 i 的值修改成 x,即 a_i \leftarrow x

  • 给定 lrk 三个参数,每次询问是否区间 [l , r] 的数出现次数都是 k 的倍数。

  • 1 \leq n \leq 3 \times 10^5$,$1 \leq q \leq 3\times 10^5

[ABC367F] Rearrange Query

  • 给定一个长度为 n 的正整数序列 ab

  • q 组询问,每次询问给定两个参数 lr,问 a_l \sim a_r 重新排列后是否能等于 b_l \sim b_r

  • 1 \leq n \leq 2\times 10^5$,$1\leq q \leq 2\times 10^5$,$1\leq a_i,b_i \leq n

完结撒花!欢迎勘误!