HDU 2065 紅色病毒 問題(math)

2021-07-03 12:39:42 字數 604 閱讀 8171

題目點這裡

題解:

這道題有很多種方法可以做,但都挺難的,包括指數母函式,dp,以及組合數學方法。這裡參考了別人的**,自己又推了一遍,利用數學方法實現了一遍,以後如果掌握了其他方法再去更新。

參考部落格

**實現:

#include 

#include

#include

#include

#define max 0x7fffffff

#define ll long long

using

namespace

std;

int n;

ll num;

int p2[30] = ;

int po(ll x);

int main()

while( scanf("%d",&n) && n )

printf("\n");

}return0;}

int po(ll x)

if( x < 0 )

return p2[x];

}

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