hdu 2065 紅色病毒 問題

2021-06-26 08:24:02 字數 838 閱讀 9647

複習母函式,發現這道題可以用矩陣快速冪。。。然後做了一下

母函式:    看起來好複雜的樣子

列dp方程,構造矩陣

dp【n】;

dp[i][0],表示放到了第i位,前i位中有 偶數個a,有 偶數個c

dp[i][1],表示放到了第i位,前i位中有 奇數個a,有 偶數個c

dp[i][2],表示放到了第i位,前i位中有 偶數個a,有 奇數個c

dp[i][3],表示放到了第i位,前i位中有 奇數個a,有 奇數個c

2  1  1  0

1  2  0  1

1  0  2  1

0  1  1  2

#include#include#include#includeusing namespace std;  

#define ll long long

#define inf 0x3f3f3f3f

#define n 10010

const ll mod=100;

struct node

t,i;

node cheng(node a,node b)

return c;

}void init()

}int main()

n--;

init();

while(n)

ll ans=2*i.a[0][0]+i.a[1][0]+i.a[2][0];

ans%=mod;

printf("case %d: %i64d\n",res,ans);

} printf("\n");

}}

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上傳播的 紅色病毒 不相上下...

HDU 2065 紅色病毒問題

description 醫學界發現的新病毒因其蔓延速度和internet上傳播的 紅色病毒 不相上下,被稱為 紅色病毒 經研究發現,該病毒及其變種的dna的一條單鏈中,胞嘧啶,腺嘧啶均是成對出現的。現在有一長度為n的字串,滿足一下條件 1 字串僅由a,b,c,d四個字母組成 2 a出現偶數次 也可以...