很简单的动态规划
方程:
a[i][j]=a[i-1][(j+n-1-1)%n+1]+a[i-1][(j+n+1-1)%n+1];
现在还是觉得(j+n+i-1)%n+1这个式子挺妙的
参考代码:
#include<iostream> #include<cstdio> #include<algorithm> #include<string> #include<cmath> #include<vector> #include<set> #include<sstream> #include<cstring> #include<utility> using namespace std; typedef long long ll; typedef long l; const int N = 200020; int n,m,a[40][40]; int main(){ cin>>n>>m; a[0][1]=1; for(int i=1;i<=m;i++){ for(int j=1;j<=n;j++){ a[i][j]=a[i-1][(j+n-1-1)%n+1]+a[i-1][(j+n+1-1)%n+1]; //cout<<i<<" "<<j<<" "<<a[i][j]<<endl; } } cout<<a[m][1]; }
0.0分
5 人评分
C二级辅导-等差数列 (C语言代码)浏览:1216 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:759 |
C语言考试练习题_排列 (C语言代码)浏览:1317 |
兰顿蚂蚁 (C++代码)浏览:1091 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:534 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)from DQM浏览:657 |
大家好,我是验题君浏览:577 |
模拟计算器 (C++代码)浏览:804 |
小九九 (C语言描述,不看要求真坑爹)浏览:984 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:600 |