ac通道:
【題解】
由4種字母組成,a和c只能出現偶數次。
構造指數級生成函式:(1+x/1!+x^2/2!+x^3/3!……)^2*(1+x^2/2!+x^4/4!+x^6/6!……)^2.
前面是b和d的情況,可以任意取,但是相同字母一樣,所以要除去排列數。後者是a和c的情況,只能取偶數個情況。
根據泰勒展開,e^x在x0=0點的n階泰勒多項式為 1+x/1!+x^2/2!+x^3/3!……
而後者也可以進行調整,需要把奇數項去掉,則e^(-x)的展開式為1-x/1!+x^2/2!-x^3/3!……
所以後者可以化簡為(e^x+e^(-x))/2。則原式為 (e^x)^2 * ((e^x*e^(-x))/2)^2
整理得到e^4x+2*e^2x+1。
又由上面的泰勒展開
e^4x = 1 + (4x)/1! + (4x)^2/2! + (4x)^3/3! + ... + (4x)^n/n!;
e^2x = 1 + (2x)/1! + (2x)^2/2! + (2x)^3/3! + ... + (2x)^n/n!;
對於係數為n的係數為(4^n+2*2^n)/4=4^(n-1)+2^(n-1);
快速冪搞之。
——**acm_cxlove
/************
hdu 2065
by chty
2016.12.7
************/
#include#include#include#include#include#include#includeusing namespace std;
typedef long long ll;
#define file "read"
const ll mod=100;
ll t,n;
namespace init
while(isdigit(ch))
return x*f;
}}using namespace init;
ll fast(ll a,ll b)
int main()
printf("\n");
} 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上傳播的 紅色病毒 不相上下...