摘要:
一个DAG,你可以加至多$k$条边,使它的字典序最小的拓扑序最大。 \(n\le 10^5\) 维护两个集合$S$和$T$分别表示零度点和加了某条入边的点。 贪心地钦定即可。 using namespace std; #include <cstdio> #include <cstring> #inc 阅读全文
摘要:
有$n$个人,第$i$个人要在$[a_i,b_i]$时间内于$d_i$点处出现。你要消灭掉这些人,每个时间可以选择一个值$R$使得位置不超过$R$的人蒸发,代价为$R$。 问消灭所有人的最小代价。 \(n\le 300\) 离散化,DP设$f_{i,j}\(表示处理完全在\)[i,j]$区间内的人的 阅读全文
摘要:
给你$n$个数,每次可以将一个数乘任意正整数。对于$k\in[0,n]$,求进行$k$次操作得到的数列中不同的数的最小值。 \(n\le 3*10^5\) 统计每个数的出现次数。将数分成两类:$A$类,存在另一个数为它的不为$1$的正整数倍;$B$类,不存在另一个数为它的不为$1$的正整数倍。 一种 阅读全文