蓝桥杯 K好数(dp)
来源:互联网 发布:2017淘宝一天的交易额 编辑:程序博客网 时间:2024/05/18 03:12
K好数
思路:动态规划即可。状态:dp[i][j]:=表示第i位以j结尾的K好数。
状态转移方程:dp[i][j]=∑dp[i-1][p](p!=j-1&&p!=j+1)(相邻两位不能是相邻的数字)。
代码:
#include<stdio.h>#include<stdlib.h># define MOD 1000000007long long f[101][100000];long long K(int l,int k){ int i,j,p; //以数字i结尾的1位K好数的数目 for( i=0; i<k; i++) { f[1][i] = 1; } for ( i=2; i<=l; i++ )//求2位开始到l位的K好数 { for( j=0; j<k; j++ )//i位的最后一位数j { f[i][j] = 0; for ( p=0; p<k; p++)//i-1位的最后一位数p { if( p!=j-1 && p!=j+1 ) { f[i][j] =(f[i][j] + f[i-1][p])%MOD; } } } } //l位的K好数总数 long long sum = 0; for ( i=1; i<k; i++) { sum += f[l][i]; } return sum%MOD;}int main(){ int k,l; scanf("%d%d",&k,&l); long long sum = 0; sum = K(l,k);printf("%I64d",sum); return 0;}
阅读全文
0 0
- 蓝桥杯 K好数(数位DP)
- 蓝桥杯 K好数(dp)
- 蓝桥杯 K好数(DP)
- 蓝桥杯 K好数(DP)
- 蓝桥杯 k好数dp
- 蓝桥杯 K好数(DP)
- K好数(DP)
- K好数 dp
- DP-K 好数
- K好数【DP】
- 蓝桥杯 算法训练 K好数(数位dp)
- 蓝桥杯ALGO-3 K好数(dp)
- 蓝桥杯 K好数 算法训练 (动态规划DP)
- K好数(DP算法)
- DP训练 K好数
- C++ DP K好数
- k好数 (蓝桥杯)
- 蓝桥杯-k好数
- 射线算法的js实现
- hdu1250(大 数)Hat's Fibonacci
- 聊天室项目
- 手机自动签到简易应用
- mysql 列column常用命令
- 蓝桥杯 K好数(dp)
- Linux命令之uniq
- 使用GTest发生错误"检测到“RuntimeLibrary”的不匹配项: 值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug"
- Btrace入门到熟练小工完全指南
- HDU
- 跟着《Learn Python The Hard Way》学Python(二)
- Java学习第三课
- SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)
- tensorflow--模型持久化