动态规划之字符编码
来源:互联网 发布:记忆宫殿软件下载 编辑:程序博客网 时间:2024/06/08 19:45
<strong>/*动态规划---------字符编码(详解参考极客学院课程) 题目描述:一个只包含字母的消息被加密后变成只含有数字的字符串。加密的方式为: '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]. </strong><span style="color:#ff0000;">*/#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;}</span>
0 0
- 动态规划之字符编码
- 动态规划之字符编码
- 字符混编---动态规划
- 动态规划之树形动态规划
- 字符编码之ASCII编码
- 动态规划之LCS
- hdu1501之动态规划
- poj之动态规划
- 梦之动态规划
- 动态规划之练习题
- 动态规划之 <筷子>
- LeetCode 之动态规划
- 动态规划之背包
- 动态规划之三角形
- 算法之动态规划
- 算法之动态规划
- 动态规划之Palindrome
- 算法之动态规划
- C/C++类实现值传递
- 为什么移动开发开始用混合app开发(Hybrid App) ,Na
- 华为bgp路由协议
- 有个成名的美国作家写了本关于小米的书,还没翻译好世界就变了
- JavaScript数据结构之队列
- 动态规划之字符编码
- 将字符串以 BASE64 编码 base64_encode() base64_decode()
- 分布式系统设计的求生之路
- SQL Server 2008 R2导出数据脚本的方法
- LMAX Disruptor——一个高性能、低延迟且简单的框架
- Linux 下Wine安装与QQ轻聊版安装
- 解决linux系统CentOS下调整home和根分区大小的方法
- SpringMVC 中HttpMessageConverter简介和Http请求415 Unsupported Media Type的问题
- Struts 2.0 整合 Hibernate 3.2 开发注册登录系统