Freedom of Choice
传送门
题面翻译
让我们把多集合 { b 1 , b 2 , … , b l e n } \{b_1, b_2, \ldots, b_{len}\} { b1,b2,…,blen} 的反美定义为多集合中数字 l e n len len 出现的次数。
我们给出了 m m m 个多集,其中 i i i 个多集包含 n i n_i ni 个不同的元素,具体来说就是:数字 a i , 1 a_{i,1} ai,1 的 c i , 1 c_{i, 1} ci,1 个副本,数字 a i , 2 , … , c i , n i a_{i,2}, \ldots, c_{i, n_i} ai,2,…,ci,ni 的 c i , 2 c_{i, 2} ci,2 个副本,数字 a i , n i a_{i, n_i} ai,ni 的 a i , 2 , … , c i , n i a_{i,2}, \ldots, c_{i, n_i} ai,2,…,ci,ni 个副本。可以保证 a i , 1 < a i , 2 < … < a i , n i a_{i, 1} < a_{i, 2} < \ldots < a_{i, n_i} ai,1<ai,2<…<ai,ni 。还给出了数字 l 1 , l 2 , … , l m l_1, l_2, \ldots, l_m l1,l2,…,lm 和 r 1 , r 2 , … , r m r_1, r_2, \ldots, r_m r1,r2,…,rm ,使得 1 ≤ l i ≤ r i ≤ c i , 1 + … + c i , n i 1 \le l_i \le r_i \le c_{i, 1} + \ldots + c_{i, n_i} 1≤li≤ri≤ci,1+…+ci,ni .
让我们创建一个最初为空的多集 X X X 。然后,对于从 1 1 1 到 m m m 的每一个 i i i ,你必须执行下面的操作次:
- 选择某个 v i v_i vi ,使得 l i ≤ v i ≤ r i l_i \le v_i \le r_i li≤vi≤ri 为空
- 从 i i i /th多集合中选择任意 v i v_i vi 个数字,并将它们添加到多集合 X X X 中。
你需要以这样的方式选择 v 1 , … , v m v_1, \ldots, v_m v1,…,v

文章描述了一个涉及IT技术的编程问题,要求在给定条件约束下,通过合理选择元素,构造一个具有最小反美感的多集合,涉及数据结构和算法设计
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



