蓝桥杯 算法训练 K好数
问题描述
如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数。求L位K进制数中K好数的数目。例如K = 4,L = 2的时候,所有K好数为11、13、20、22、30、31、33 共7个。由于这个数目很大,请你输出它对1000000007取模后的值。
输入格式
输入包含两个正整数,K和L。
输出格式
输出一个整数,表示答案对1000000007取模后的值。
样例输入
4 2
样例输出
7
数据规模与约定
对于30%的数据,KL <= 106;
对于50%的数据,K <= 16, L <= 10;
对于100%的数据,1 <= K,L <= 100。
解题思路:
dp问题,dp[i][j]的意思为,i为几位数,j为首位数字,值为情况有多少种,因为要保证相邻两位不能为相邻数字,所以第i行的值为第i-1行,排除j-1和j+1列。
求l位的,就是需要打出1—L行的情况,每行的数据都是基于上一行数据得出的。
加法取模运算需要注意!!!
代码如下:
#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
#define mod 1000000007
int dp[105][105];int main()
{int k,l,i,j,x;scanf("%d%d",&k,&l); //输入k进制,L位数for(i = 0; i<k; i++) //初始是第一行各列都为1,不存在需要排除的情况dp[1][i] = 1;for(i = 2; i<=l; i++) //行循环for(j = 0; j<k; j++) //列循环for(x = 0; x<k; x++) //用来排除相邻的数if(x!=j-1&&x!=j+1){dp[i][j]+=dp[i-1][x];dp[i][j]%=mod;}int sum = 0;for(i = 1; i<k; i++) //统计{sum+=dp[l][i];sum%=mod;}printf("%d\n",sum%mod);return 0;
}
蓝桥杯 算法训练 K好数相关推荐
- Java实现 蓝桥杯 算法训练 K好数
算法训练 K好数 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 问题描述 如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数.求L位K ...
- [蓝桥杯][算法训练]K好数(动态规划)
题目描述 如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数.求L位K进制数中K好数的数目.例如K = 4,L = 2的时候,所有K好数为11.13.20.22 ...
- java 蓝桥杯算法训练 寂寞的数(题解)
试题 算法训练 寂寞的数 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 道德经曰:一生二,二生三,三生万物. 对于任意正整数n,我们定义d(n)的值为为n加上组成n的各个数字的和. ...
- java 蓝桥杯算法训练 求完数(题解)
试题 算法训练 8-2求完数 资源限制 时间限制:50.0s 内存限制:256.0MB 问题描述 如果一个自然数的所有小于自身的因子之和等于该数,则称为完数.设计算法,打印1-9999之间的所有完数. ...
- 蓝桥杯 算法训练 - 寂寞的数 道德经曰:一生二,二生三,三生万物。 对于任意正整数n,我们定义d(n)的值为为n加上组成n的各个数字的和。例如,d(23)=23+2+3=28, d(1481
问题描述 道德经曰:一生二,二生三,三生万物. 对于任意正整数n,我们定义d(n)的值为为n加上组成n的各个数字的和.例如,d(23)=23+2+3=28, d(1481)=1481+1+4+8+1= ...
- 蓝桥杯算法训练合集十三 1.P06022.P07033.逗志芃的危机4.唯一的小可爱5.JOE的矩阵
目录 1.P0602 2.P0703 3.逗志芃的危机 4.唯一的傻子 5.JOE的矩阵 1.P0602 问题描述 编写一个程序,输入一个4位的自然数,将组成该数的各位数字重新排列,形成一个最大数和一 ...
- 蓝桥杯 算法训练 强力党逗志芃
蓝桥杯 算法训练 强力党逗志芃 题目描述 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 逗志芃励志要成为强力党,所以他将身上所以的技能点都洗掉了重新学技能.现在我们可以了解到,每个 ...
- 蓝桥杯 算法训练 幸运的店家
蓝桥杯 算法训练 幸运的店家 题目描述 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 炫炫开了一家商店,卖的货只有一个,XXX,XXX卖N元钱.有趣的是,世界上只有面值为3的幂的纸 ...
- 蓝桥杯 算法训练 Beaver's Calculator
蓝桥杯 算法训练 Beaver's Calculator 问题描述 从万能词典来的聪明的海狸已经使我们惊讶了一次.他开发了一种新的计算器,他将此命名为"Beaver's Calculator ...
最新文章
- java Character类的一些简单的方法
- Windows2003利用×××+NAT+静态路由表建立网通电信双线×××服务器
- 微信小程序 点击按钮 退出
- 优秀Java程序员的编程风格
- 如何在React中使用gRPC-web
- android分享文字到朋友圈,微信,分享朋友圈,只能分享图,文字带不过来,这是什么原因?是BUG吗?...
- 安装vs2017出现闪退现象_win7安装vs2017时闪退
- 远控免杀从入门到实践 (11) 终结篇
- java完成crm系统ppt,客户关系管理系统答辩稿.ppt
- tensorflow实现手写数字识别
- 创建React脚手架项目
- python123随机密码生成器_python密码生成器的3种方法
- MoveIt2——4.机器人模型和机器人状态
- MEncoder的基础用法—6.5. 编码为MPEG格式
- Longest Common Subsequence
- AutoCAD系统变量和环境变量
- 服务器提取数据库信息,服务器自动提取数据库
- Nginx软件介绍及下载地址
- oppo Reno 5 pro​​手机打开USB调试步骤(oppo手机大同小异,其他品牌也适用)
- 为什么PHP项目运行报错502,php为什么会出现502错误