首页 > 其他 > 详细

CodeForces 166E Tetrahedron

时间:2018-02-21 12:10:35      阅读:180      评论:0      收藏:0      [点我收藏+]

题意:给你一个四边形,让你从顶点 出发,经过k步返回顶点,问你一共有多少种做法

思路:dp【i】代表每一步,dp【i】【0】代表顶点,其他顶点都是相互转移的,类似于选择的dp

代码:

#include <bits/stdc++.h>
using namespace std;
const int maxn=1e7+5;
const int MOD=1e9+7;
int dp[maxn][5];
int main() {
    int n; scanf ("%d",&n);
    memset (dp,0,sizeof (dp) );
    dp[0][0]=1;
    for (int i=1; i<=n; i++) {
        for (int j=0; j<4; j++) {
            for (int k=0; k<4; k++) {
                if (j==k) { continue; }
                dp[i][j]+=dp[i-1][k];
                if (dp[i][j]>=MOD) { dp[i][j]%=MOD; }
            }
        }
    }
    cout<<dp[n][0]<<endl;
    return 0;
}

 

CodeForces 166E Tetrahedron

原文:https://www.cnblogs.com/lalalatianlalu/p/8456362.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!