-
P12788 [ICPC 2024 Yokohama R] Scheduling 题解
题意:给定 $n$ 个二进制数 $a_i$,你要从中选出一个二元组 $(a_x,a_y)$,要求 $a_x\wedge a_y=2^m-1$。若存在多解,则最大化 $\operatorname{pop}(a_x\vee a_y)$;若仍存在多解,则最小化 $x$,若仍存在多解,则最小化 $y$。若无解则输出
NO
。
-
来学累积分布函数 cdf
如果题目询问的是一个随机排列的序列,不妨给每个元素都随机一个 $[0,1]$ 的权值。
-
CF2113D Cheater
由于所有牌的数字形成排列,互不相同,所以不用考虑数字相同的情况。
每次比较后,大的那张牌会放逐,小的那张牌会被留下。
因此,每次放逐的牌的大小是单调递减的,因为小的那张牌会被留下。无论对面下一张牌比它大还是比它小,放逐的牌都比前一次小。
另外,一个玩家得分数量代表他放逐的牌的数量。
-
CF2119D Token Removing
对于一个序列 $a$,似乎很难计算其移除标记的方案数 $f(a)$。
不妨换一个思路,对于一个移除标记的方案,去计算有多少序列能够产生这种方案。
-
2025“钉耙编程”中国大学生算法设计暑期联赛(9)
队友手速惊人,秒杀 1001 和 1012(-1)。
-
NC108306 2025牛客暑期多校训练营10
开场以为 D 是数数,打了表发现是诈骗。
-
NC108306 2025牛客暑期多校训练营9
开场速过签到 M,队友速过 J。
-
QOJ12871 k-transpositions
题意:初始有序列 $a_i=i$,你可以进行不超过 $k$ 次交换操作,每次交换操作选择两个位置 $i,j$,交换 $a_i,a_j$,求有多少序列可能被交换出来。
-
ARC194D Reverse Brackets
一次选中的区间一定是合法括号串,合法括号串翻转后仍然是一个合法括号串。
如果我们把整个序列拆成一个极长合法括号串序列,翻转就相当于序列的一个子串的 reverse。
每次选一个子串的 reverse 其实相当于可以任意排列,因为可以每次选取子串长度为 $2$,那么就类似于冒泡排序,可以任意换位。
那么对答案的贡献就是多重集的排列,即序列长度阶乘除以每个的出现次数的阶乘,然后对拆成后的合法括号串递归下去即可。
-
CF621641A Majsoul
https://codeforces.com/group/MIyYz3rj9b/contest/621641/problem/A
- •
- 1
- 2