[COGS 1516] 棋盘上的车 题目描述 原题地址:COGS 思路一 乘法原理水过,计算$n!$即可,复杂度$O(n)$ 思路二 DP方程 每次放置一枚棋子,一行一行放,可以用一个二进制数表示状态,如$(0010011)_2$表示第一、二、五列已放棋子。 设$f(n)$是放置$n$枚棋子的方案数,可以知道,$f((0010011)_2)=f((0000011)_2)+f((0010001)_2)+f((0010010)_2)$,类似地,我们可以推出方程: 阅读全文
题目描述 题目地址:COGS 这题真是蛇,调一晚上。。码力太弱了qwq 思路 本来以为这跟HAOI2016的食物链一样,但是在WA了一次后注意到食物链计算的是经过某点的路径条数,而本题是经过某边的路径条数。 DP 方程 为了求出经过某一条边的的路径条数,可以这样: 设$f(u,v)$是经过边$u,v$的路径条数,$dp(u)$为从源点到$u$的路径条数,$rdp(v)$为从$v$到终点的路径条数,则有 $f(u,v)=dp(u)\times rdp(v)$ 最后的答案就是$\max{f(u,v)} u,v\in G$ 阅读全文