CF1404C Fixed Point Removal 做题记录

给定一个含有 nn 个正整数的序列 aa ,对于一次操作,你可以任选一个位置 ii 且满足 ai=ia_i=i,那么就可以移除这个元素,并将后面所有的元素向前移动一位。

对于每个相互独立的询问 x,yx,y 需要你求出在前 xx 个元素以及后 yy 个元素不能被移除的情况下,最多可以进行几次操作。

n,q3×105n,q \leq 3\times 10^5

阅读全文 »

CF888G Xor-MST 做题记录

给定 nn 个结点的无向完全图。每个点有一个点权为 aia_i。连接 ii 号结点和 jj 号结点的边的边权为 aiaja_i\oplus a_j

求这个图的 MST 的权值。

1n2×1051\le n\le 2\times 10^50ai<2300\le a_i< 2^{30}

阅读全文 »

CF1670E Hemose on the Tree 做题记录

题目包含 QQ 组数据。

对于每一组数据,给出 pp,使得 n=2pn=2^p,给出一棵 nn 个点的树的边,你要定出树的根,和树上的所有点权和边权,使得所有点权和边权构成一个 12n11 \sim 2 n - 1 的排列,且从根到每个节点和每条边简单路径上点权和边权的异或和的最大值最小。输出方案。

1p171\le p\le 17

阅读全文 »

【Public Judge NOIP Round 2】排序 做题记录

给定 nn 和一个 nn 的排列 aa,考虑以下过程:

维护一个初始为空的栈,然后从 11nn 枚举 ii

  • aia_i 比栈顶严格大或栈为空,那么把 aia_i 加入栈中;
  • 否则:
    • 把栈顶弹出,并把 aia_i 加入栈中。注意,你需要保证操作完成后栈中元素从底到顶严格单调递增;
    • 什么也不干;

请你求出最后栈大小的最大值。

1n5×1051\le n\le 5\times 10^5

阅读全文 »

CF1278E Tests for problem D 做题记录

给一棵 nn 个点的树,构造 nn 条线段,要求每个端点都是 [1,2n][1,2n] 中的整数且不重复,并使得两个点 i,ji,j 在树上有边,当且仅当线段 i,ji,j 相交且不包含。

1n51051 \le n \le 5 \cdot 10^5

阅读全文 »

CF1468H K and Medians 做题记录

给定奇数 kk 和长度分别为 n,mn,m 的序列 a,ba,b,序列 aa 包含所有整数 ii 满足 1in1\leq i\leq nbb 是给定的单调不减的序列。

现在你可以进行零次或若干次操作,每次操作选择序列 aakk 个整数,然后删除这 kk 个数里除了他们的中位数的其他 (k1)(k-1) 个数。

求能否通过零次或若干次操作从序列 aa 的到序列 bb。能就输出 YES,不能输出 NO

3n2×105;3kn;1m<n3\leq n\leq 2\times 10^5;3\leq k\leq n;1\leq m<n1b1<b2<...<bmn1\leq b_1<b_2<...<b_m\leq n

阅读全文 »