一个马来西亚老哥出的一场Div2
,题目还算有点意思,于是就virtual了后三个题。
$C$
给定一段序列,要对着短序列进行涂色。有些位置涂了色,就不能再涂了;没涂色的位置可以涂任意颜色,同一个位置$i$涂不同的颜色$j$有不同的代价。求将整个序列涂成$k$个颜色段的最小代价。
$n,m\leq 100$
一眼$dp$。然后就是设计状态,记$\mathsf {f_{i,j,k}}$表示前$i$个涂成了$j$段,最后一段颜色是$k$的最小代价,暴力转移即可。
1 | cin >> N >> M >> K ; |
$D$
有$n$个点和$n$条边,第$i$条边从$i$连到$a_i$ 。
每条边需要指定一个方向(无向边变为有向边)。问有多少种指定方向的方案使得图中不出现环
一道计数题,但是比较睿智。给定的图显然是一堆基环树。那么考虑不在环上的边显然怎么定向都无所谓,在环上的边也只会是恰好都顺时针或者恰好都逆时针不合法。乘法原理乘起来就完了。
好早之前做的题了,然后当时这题卡了半天原因是我忘了怎么dfs找环了……大概就是祖先记一记,树上游一游,就做完了…类似于tarjan?…可海星
1 | inline ll expow(int b){ |
$E$
求一年有$2^n$天,$k$个人出现两人生日相同的可能性是多少。
$n,k\leq 10^{18},\rm Mod=1e6+3$
首先考虑答案就是
$$
\frac{\prod\limits_{i=2^n-k+1}^{2^n-1}i}{2^{n \cdot {k-1}}}
$$
然后就变成了如果把这个东西求出来传统艺能.jpg
1、如果$k>P=1e6+3$,那么根据抽屉原理分子中肯定至少有一项$\bmod \rm P=0$。
2、因为分母是$2$的幂,所以最后实际上就是在求分子中有多少个$2$乘起来
3、考虑如何求分子有多少个$2$。考虑一个引理,就是$2^n-m$和$m$中的$2$的个数一样。证明大概就是考虑令$m=2^p\cdot q$,其中$p$为极大的$2$的幂指数,那么$2^n-m=2^n-2^p\cdot q=2^p(2^{n-p}-q)$。根据整除的性质$a|b-c,a|b\Longleftrightarrow a|c$,而$2\not| ~~ q$,所以$2^n-m$中$2$的次数就是$p$.
4、然后由3中的引理,就有一个比较经典的做法。就是我们可以得到
$$
\begin{aligned}
(\prod\limits_{i=2^n-k+1}^{2^n-1}i,2^n)&=(\prod\limits_{i=2^n-k+1}^{2^n-1}(2^n-i), 2^n)\ &=(\prod\limits_{i=1}^{k}i,2^n)\ &=(k!,2^n)
\end{aligned}
$$
再结合抽屉原理,只需要枚举$2$的幂就可以算了。
1 |
|