7 17 mmh學長的三色燈 20分

2021-10-02 19:58:16 字數 969 閱讀 9758

題目初步轉化出條件:n為1或者2的時候是特殊情況,因為對於燈成環來說,對於這兩個特殊情況是無效的

進一步轉化:這個題一定是有規律可循的,我們可以看到,n取得是1e6,一般就是寫乙個o(n)的演算法

對於有n個燈的情況中,我們可以發現,當n-1與1是不同顏色的情況下,n這個位置只有一種可能,當n-1與1不同的時候,不就是f[n-1]這種情況嗎?當n-1與1相同時,那麼n-2一定與1不同,那麼這不又是f[n-2]這種情況嗎?故得動態方程

f[n] = f[n-1] + f[n-2] * 2;

7-17 mmh學長的三色燈 (20分)

mmh學長的三色燈

mmh學長有n個能發出紅,綠,藍三種顏色的燈泡。 mmh學長把這些燈泡排成一排,每個燈泡在某一時刻 只能發出一種顏色的光。 現在要求任何相鄰的燈泡不能發出相同顏色的光,並且 首尾兩個燈泡發出光的顏色也不能相同,問總共有多少 發光方案滿足條件。

有多組輸入,每組輸入乙個正整數n(n≤1000000),表示mmh學長持有的 三色燈泡的個數。

每個輸入輸出乙個正整數,每個輸出佔一行,表示有多少種 方案滿足相鄰兩個燈泡不能發出相同顏色的光,首尾兩個燈 泡也不能發出相同顏色的光。由於該數可能過大,你只需要 輸出答案對1e9+7取模的結果即可。

1

2

3

6

ac

#include#include#includeusing namespace std;

#define maxn 1000005

typedef long long ll;

ll dp[maxn];

ll mod = 1000000007;

int n;

int main()

while(cin>>n)

cout

}

7 17常用類上

string 1 不可變 2 格式 3 比較字串 值,比較引用 new 位置 4 equal比較引用的值 5 常用方法例項 一public class strin 二 public class strin1 6 string s string.valueof j 將j轉為obj型,再轉為string...

python3 mmh3安裝及使用

雜湊方法主要有md sha murmur cityhash mac等幾種方法。mmh3全程murmurhash3,是一種非加密的雜湊演算法,常用於hadoop等分布式儲存情境中,在anaconda中安裝使用命令 pip install mmh3報錯如下 microsoft visual c 14.0...

7 17 爬動的蠕蟲

7 17 爬動的蠕蟲 15 分 一條蠕蟲長1寸,在一口深為n寸的井的底部。已知蠕蟲每1分鐘可以向上爬u寸,但必須休息1分鐘才能接著往上爬。在休息的過程中,蠕蟲又下滑了d寸。就這樣,上爬和下滑重複進行。請問,蠕蟲需要多長時間才能爬出井?這裡要求不足1分鐘按1分鐘計,並且假定只要在某次上爬過程中蠕蟲的頭...