博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
algo_03 K好数 蓝桥杯
阅读量:6892 次
发布时间:2019-06-27

本文共 1843 字,大约阅读时间需要 6 分钟。

第一次解出dp,有点兴奋。。。。。
 
 
问题描述

如果一个自然数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解题

#include
#include
using namespace std;#define M 1000000007//save[i][j]表示i位以j开头的K好数的个数 long long save[102][102] = {
0};int K, L;void init() { memset(save, 0, sizeof(save));} //dp 不考虑首位不为零的情况 long long dp(int l) { for(int i = 0; i < K; i++) { if(l < 2){
break;} if(l == 2) { for(int j = 0; j < K; j++) { if(j == 0 || j == K - 1) save[2][j] = K - 1; else save[2][j] = K - 2; } return 0; } // 计算 save[i][j] for(int k = 0; k < K; k++) { if(k != i -1 && k != i + 1 && k >=0 && k < K) { //除去相邻越界 if(save[l - 1][k] != 0) save[l][i] += save[l - 1][k]; else { dp(l - 1); save[l][i] += save[l - 1][k]; } } save[l][i] %= M; //防止数据过大溢出 } }}int main() { init(); cin >> K >> L; if(K <= 2) {cout << 0 << endl; return 0;} long long sum = 0; dp(L); for(int i = 1; i < K; i++) { sum += save[L][i]; } //cout << sum << endl; cout << sum % M << endl; return 0; }

评测详情

评测点序号 评测结果 得分 CPU使用 内存使用 下载评测数据
1 正确 10.00 0ms 0.984MB
2 正确 10.00 0ms 0.988MB
3 正确 10.00 0ms 0.988MB
4 正确 10.00 0ms 0.988MB
5 正确 10.00 0ms 0.988MB
6 正确 10.00 15ms 0.984MB
7 正确 10.00 0ms 0.984MB
8 正确 10.00 15ms 0.988MB
9 正确 10.00 15ms 0.984MB
10 正确 10.00 15ms 0.984MB

转载于:https://www.cnblogs.com/bearcarl/p/8647142.html

你可能感兴趣的文章
python时间转为时间戳
查看>>
eclipse启动tomcat时内存溢出
查看>>
IT人IT事IT爱好者
查看>>
what is Android?
查看>>
UIView 旋转动画
查看>>
我的友情链接
查看>>
设计模式第一弹------策略模式
查看>>
CentOS5.x缺少libXm.so.3
查看>>
玩转redis集群(一)—— 多机器上redis的快速安装
查看>>
源码安装redis-3.0.5
查看>>
Mycat 分布式事务的实现
查看>>
Gluster 3.7 plan的feature列表
查看>>
Java内存模型之从JMM角度分析DCL
查看>>
C#.NET 中按钮点击一次刷新,第二次才会触发按钮事件解决办法
查看>>
自定义协议 与 TLV格式 的总结
查看>>
java:eclipse小图标含义
查看>>
LVM的原理与编程设置和基于lv的快照卷
查看>>
简单配置squid代理和反响代理
查看>>
Spring 5 WebFlux
查看>>
微服务层次图
查看>>