圆环上有 10 个点,编号 0~9 。从 0 出发,每次可以顺时针或逆时针走一格,请问一共走且仅走 n 步回到原点的方法有多少种。 数据范围: ,由于答案可能会非常大,所以请对答案对 取模
区块链毕设网qklbishe.com为您提供问题的解答
圆环上有 10 个点,编号 0~9 。从 0 出发,每次可以顺时针或逆时针走一格,请问一共走且仅走 n 步回到原点的方法有多少种。
数据范围: ,由于答案可能会非常大,所以请对答案对 取模
//每一个步骤的对应方法为左边编号的方法和右边编号的方法加和 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int整型 * @return int整型 */ int circle(int n) { // write code here long long int dp[10][n+1]; int mod = 1000000007; for(int i=0;i<=9;i++) { for(int j=0;j<=n;j++) { dp[i][j] = 0; } } dp[0][0] = 1; for(int m=1;m<=n;m++) { for(int i=0;i<=9;i++) { dp[i][m] = (dp[(i-1+10)%10][m-1]%mod+dp[(i+1+10)%10][m-1]%mod)%mod; } } //cout<<"dp[0][n] = "<<dp[0][n]<<endl; return dp[0][n]; } };
编辑于 今天 15:56:50
以上就是关于问题圆环上有 10 个点,编号 0~9 。从 0 出发,每次可以顺时针或逆时针走一格,请问一共走且仅走 n 步回到原点的方法有多少种。
数据范围: ,由于答案可能会非常大,所以请对答案对 取模的答案
欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。
区块链NFT链游项目方科学家脚本开发培训