动态规划之字符编码
来源:互联网 发布:有道云mac 隐藏侧边栏 编辑:程序博客网 时间:2024/06/06 02:21
/*动态规划---------字符编码(详解参考极客学院课程) 题目描述:一个只包含字母的消息被加密后变成只含有数字的字符串。加密的方式为: 'A'------------'1' 'B'------------'2' .......... 'Z'------------'26'现在给你一列数字字符串,问有多少中被解密的方法?解题思路:经典的dp问题,现假设dp[i]表示解密到第i数字字符的方法数,则dp[i+1]的大小至少和dp[i]相等;若第i+1个数字字符能和第i个字符构成'1'~'26'的其中之一,则第i+1个数字字符的方法数为:dp[i+1]+=dp[i-1]. */#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;//定义dp函数---------字符编码 int Solve(char s[],int len){int i,dp[1010];memset(dp,0,sizeof(dp));if(len<2) return 1;else{dp[0]=dp[1]=1;if(s[0]=='1'||(s[0]=='2'&&s[1]<='6')) dp[1]=2;for(i=2;i<len;i++){dp[i]=dp[i-1];if(s[i-1]=='1'||(s[i-1]=='2'&&s[i]<='6')){dp[i]+=dp[i-2];}}}return dp[len-1];}int main(){char s[1010];int len;printf("请输入一列数字字符串!\n");scanf("%s",s);len=strlen(s);int result=Solve(s,len);printf("结果为:%d\n",result);return 0;}
0 0
- 动态规划之字符编码
- 动态规划之字符编码
- 字符混编---动态规划
- 动态规划之树形动态规划
- 字符编码之ASCII编码
- 动态规划之LCS
- hdu1501之动态规划
- poj之动态规划
- 梦之动态规划
- 动态规划之练习题
- 动态规划之 <筷子>
- LeetCode 之动态规划
- 动态规划之背包
- 动态规划之三角形
- 算法之动态规划
- 算法之动态规划
- 动态规划之Palindrome
- 算法之动态规划
- python小脚本
- Android Studio系列-签名打包
- Nandflash启动,norflash启动,SDRAM总结
- 几种常用的php字符串函数
- InnoDB: space header page consists of zero bytes in tablespace ./mysql/iyikcr32.ibd (table mysql/iyi
- 动态规划之字符编码
- 理解Netty中的零拷贝(Zero-Copy)机制
- 自定义View
- 解决jni无法标识类型问题
- 数据预处理系列:(十)用因子分析降维
- Android开发EditText属性
- Http请求数据GZIP压缩
- Java与C++创建对象
- 文件系统fs-04