題目大意:求長度為
n 的dna單鏈,滿足c和
t 出現偶數次,a和
g 任意,這樣的dna單鏈有多少種
去學了下指數生成函式……
設函式a(x
)=∑+
∞i=0
aixi
i!那麼兩種元素的組合就是a(
x)∗b
(x)
理由很簡單,我們發現 ai
xii!
∗bjx
jj!=
ai∗b
j∗(i
+j)!
i!∗j
!xi+
j(i+
j)!
組合數就這樣被搞出來了
那麼對於此題,
a 和
g的生成函式顯然是1+
x1!+
x22!
+...
=ex
而c和t
的生成函式則是1+
x22!
+x44
!+..
.=ex
+e−x
2 故答案函式f(
x)=e
2x(e
x+e−
x2)2
=e4x+2e
2x+1
4 因此n
次項係數為4n
+2∗2
n4=4
n−1+
2n−1
#include
#include
#include
#include
#define mod 400
using
namespace
std;
unsigned
long
long n;
int quick_power(int x,unsigned
long
long y)
return re;
}int main()
return
0;}
hdu 2065 紅色病毒 問題
複習母函式,發現這道題可以用矩陣快速冪。然後做了一下 母函式 看起來好複雜的樣子 列dp方程,構造矩陣 dp n dp i 0 表示放到了第i位,前i位中有 偶數個a,有 偶數個c dp i 1 表示放到了第i位,前i位中有 奇數個a,有 偶數個c dp i 2 表示放到了第i位,前i位中有 偶數個...
hdu 2065 紅色病毒 問題
problem description 醫學界發現的新病毒因其蔓延速度和internet上傳播的 紅色病毒 不相上下,被稱為 紅色病毒 經研究發現,該病毒及其變種的dna的一條單鏈中,胞嘧啶,腺嘧啶均是成對出現的。現在有一長度為n的字串,滿足一下條件 1 字串僅由a,b,c,d四個字母組成 2 a出...
hdu2065 紅色病毒 問題
思路 先暴力打個表,然後找規律.include includeint main int b 5 4 int64 n,m while scanf d t eof t printf n return 0 description 醫學界發現的新病毒因其蔓延速度和internet上傳播的 紅色病毒 不相上下...