E. Tetrahedron

Posted ZangYH

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了E. Tetrahedron相关的知识,希望对你有一定的参考价值。

题目链接:https://codeforces.com/problemset/problem/166/E
解题思路:第n步要回到D点,所以在第n-1步除了当前点和D点,还有两个点可以走,在第n-2步,出了当前点还有三个点可以走,所以就可以推出递推公式dp[i]=2*dp[i-1]+3*dp[i-2]
#include<bits/stdc++.h> using namespace std; const int maxn=1e7+10; int n; long long dp[maxn]; void solve() dp[1]=0; dp[2]=3; for(int i=3;i<=n;i++) dp[i]=(dp[i-1]*2+dp[i-2]*3)%1000000007; cout<<dp[n]; return ; void INPUT() scanf("%d",&n); solve(); int main() INPUT(); //solve(); return 0;


内存超限代码:
#include<bits/stdc++.h>
using namespace std;
const int maxn=1e7+10;
int n; 
long long dp[maxn][4];
void solve()
    for(int i=1;i<=3;i++)dp[1][i]=1;
    for(int i=2;i<=n-1;i++)
        for(int j=1;j<=4;j++)
            for(int k=1;k<=4;k++)
                if(k!=j)
                    dp[i][j]+=dp[i-1][k];
                
            
        
    
    long long res=0;
    for(int i=1;i<=3;i++)
        res=(res+dp[n-1][i])%1000000007;
    
    cout<<res;
    return ;


void INPUT()
    scanf("%d",&n);
    solve();


int main()

    INPUT();
    //solve();
    return 0;

 

 

 

以上是关于E. Tetrahedron的主要内容,如果未能解决你的问题,请参考以下文章

CodeForces 166E Tetrahedron

CF 166E Tetrahedron

tetrahedron

HDU 5733tetrahedron

可以解密加密数据的片段吗?

E. DeadLee 思维 贪心 cf官方答案代码详解