博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SPOJ Problem 394:Alphacode
阅读量:6673 次
发布时间:2019-06-25

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

给一组数字,按a..z为1..26排求出能组成多少种不同的字母链。

简单的DP,边界条件f[0]=1,f[1]=1,f[n]=f[n-1](如果第n个字符即s[n-1]!=48),f[n]+=f[n-2](如果第n和第n-1个字符能组成小于26的数字)

#include
#include
char s[5005];int i,j,l;long long f[5005];int main(){ while(scanf("%s",s)&&s[0]!=48){ l=strlen(s); memset(f,0,sizeof(f)); f[1]=1;f[0]=1; for (i=2;i<=l;i++){ if (s[i-1]!=48)f[i]=f[i-1]; if (s[i-2]==49)f[i]+=f[i-2]; else if (s[i-2]==50&&s[i-1]<55)f[i]+=f[i-2]; } printf("%lld\n",f[l]); }}

转载于:https://www.cnblogs.com/moris/p/4316740.html

你可能感兴趣的文章
东方日升拉美光伏电站项目 将进入首期施工
查看>>
软件探索性测试 笔记二
查看>>
将来也不会被破译的分布式存储系统
查看>>
光伏电站或成辅助服务市场“输家”
查看>>
今年光伏“领跑者”计划将升级扩围
查看>>
Java程序运行超时后退出或进行其他操作的实现
查看>>
手把手教你启用RemoteFX以及Hyper-V GPU卸载
查看>>
《交互式程序设计 第2版》一3.10 更进一步
查看>>
英伟达发布Tesla P4&P40两款基于Pascal架构的深度学习芯片
查看>>
《ANSYS Workbench有限元分析实例详解(静力学)》——2.5 Windows界面相应操作
查看>>
《代码整洁之道:程序员的职业素养》一一1.3 首先,不行损害之事
查看>>
intellij 创建java web项目(maven管理的SSH)
查看>>
spring-java项目中连接redis数据库
查看>>
UML介绍--用例图
查看>>
阿里云DTS VS MySQLdump
查看>>
为android封装的百度定位组件
查看>>
我的友情链接
查看>>
Linux系统新手学习的11点建议
查看>>
Android SDK:构建一个购物中心搜索的应用(二)-Points of Interest
查看>>
查询oracle数据库编码
查看>>