Sicily 1001. Alphacode
动态规划题目,若第i个字符能够和前一个字符构成有意义的密码,即10-26,则这个字符前(包括这个字符)的子字符串可以构成的可能解有dp[i] =dp[i-1]+dp[i-2]个,因为此时:这个字符可以单独作为一个密码存在,此时整个子字符串有dp[i-1]个解;又或者是和前一个字符作为一个密码存在,此时整个字符串有dp[i-2]个解。若第i个字符无法和其前一个字符构成有意义的密码,那么这个字符只能作为一个单独的密码存在,此时整个子字符串有dp[i-1]个解。若当前字符是0,由于密码的正确性,其前一个字符必定是0或者1,此时整个子字符串有dp[i-2]个解。另外数组要开得大点,因为题目中没有说明字符串最大有多大,也可以只设3个变量来解决这个问题,毕竟这个动态转移方程和斐波纳兹函数很像。
Run Time: 0sec
Run Memory: 312KB
Code length: 651Bytes
SubmitTime: 2012-02-0121:54:13
// Problem#: 1001
// Submission#: 1204017
// The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License
// URI: http://creativecommons.org/licenses/by-nc-sa/3.0/
// All Copyright reserved by Informatic Lab of Sun Yat-sen University
#include <iostream>
#include <string>
using namespace std;int main()
{int i;string s;int num[ 3 ];while ( cin >> s && s != "0" ) {num[ 0 ] = num[ 1 ] = num[ 2 ] = 1;for ( i = 1; i < s.size(); i++ ) {num[ 0 ] = num[ 1 ];num[ 1 ] = num[ 2 ];if ( s[ i ] == '0' )num[ 2 ] = num[ 0 ];else if ( ( s[ i - 1 ] == '1' && s[ i ] <= '9' ) || ( s[ i - 1 ] == '2' && s[ i ] <= '6' ) )num[ 2 ] = num[ 0 ] + num[ 1 ];elsenum[ 2 ] = num[ 1 ];}cout << num[ 2 ] << endl;}return 0;}
Sicily 1001. Alphacode相关推荐
- 【艾米莉娅】Sicily:1001. Alphacode 代码分享
Code in C Language for SOJ 1001. Alphacode (代码没啥注释是因为后天要考四级却还没有复习) 事情是这样的(:з)∠)_ 某日突然知道中大还有类似于POJ的SO ...
- Sicily 1001. 叠罗汉
Description 最近叠罗汉成为一种时尚运动,于是有了叠罗汉社-- 或许有人比较out,不清楚这种运动的规则,简单来说:就是人叠人,第一个人站在地面,第二个人站在第一个人的肩膀,第三个人站在第二 ...
- sicily题目分类
sicily题目分类 1. 编程入门 2. 数据结构 3. 字符串 4. 排序 5. 图遍历 6. 图算法 7. 搜索:剪枝,启发式搜索 8. 动态规划/递推 9. 分治/递归 10. 贪心 11. ...
- [sicily]部分题目分类
sicily题目分类 1. 编程入门 2. 数据结构 3. 字符串 4. 排序 5. 图遍历 6. 图算法 7. 搜索:剪枝,启发式搜索 8. 动态规划/递推 9. 分治/递归 10. 贪心 11. ...
- Sicily 题目分类
依照自己水平挑着做→ →~~ 1. 编程入门 2. 数据结构 3. 字符串 4. 排序 5. 图遍历 6. 图算法 7. 搜索:剪枝,启发式搜索 8. 动态规划/递推 9. 分治/递归 10. 贪心 ...
- Soj题目分类 python代码)
正值期末复习,刷点soj放松下 但想看看能不能在找点关于数据结构的题目来做一下. 在网上看到有不少人上传过那些关于部分SOJ题目的描述,但是说实话有些乱 不过我看到有个网页中包含的一个类似文档的东西, ...
- 初学者acm的练习题指南
上机练习题参考题 忘了在哪找的啦~~希望对大家有帮助呦 <!--[if !supportLists]-->1. <!--[endif]-->Programming Bas ...
- 编程题目分类(剪辑)
1. 编程入门 2. 数据结构 3. 字符串 4. 排序 5. 图遍历 6. 图算法 7. 搜索:剪枝,启发式搜索 8. 动态规划/递推 9. 分治/递归 10. 贪心 11. 模拟 12. 算术与代 ...
- [sicily]【1001】 会议安排(田忌赛马类贪心)
题干: N个会议要同时举行,参会人数分别为A[0], A[1], ...,A[N-1]. 现有M个会议室,会议室可容纳人数分别为B[0], B[1], ...,B[M-1]. 当A[i]<=B[ ...
最新文章
- iframe怎么用_怎么样减少无效URL的爬行和索引
- python中xpath用法_Python中的xpath基础使用
- linux centos-6.5,Linux(CentOS 6.5)安装 mysql
- OrderOnline——设计概述
- 加快android编译速度
- MybatisPlus报错: org.apache.velocity.context.Context(已解决)
- 【数据结构笔记11】二叉搜索树,动态查找,删除操作
- OpenCasCade将鼠标点映射到OCC三维视图中的三维点(鼠标点转换为OCC三维坐标)
- 零基础如何入门数学建模?
- 网络管理员考试试题分类精解电子书
- 四大汽车总线:LIN、CAN、FlexRay、MOST简述
- 聚石塔,云鼎,多多云-----有一种坑叫盲打
- Laravel 使用 seeder 使用要点
- snmp-cmds:最简单的调用 Net-SNMP 二进制文件作为子进程的库可移植python SNMP 库
- 笔记本电脑系统迁移0xc0000225
- 局部全局变量、匿名函数、递行函数
- 关于 FullNat 模式的 Toa 实现原理【转】
- Python可视化库matplotlib.pyplot里contour与contourf的区别
- Chatgpt聊天机器人系统开发
- 主流的音视频SDK调研
热门文章
- 使用git提交代码到仓库报错总结
- MySQL数据库教程天花板,mysql安装到mysql高级,强|硬
- Python 自动化办公-玩转 Word
- java 四舍六入五成双_显示格式的四舍六入五成双
- MySQL的自身防御机制_自我防御机制
- 小眼睛适合大框还是小框眼镜_【图】小眼睛适合什么眼镜框 这个禁忌千万不要犯_小眼睛_伊秀服饰网|yxlady.com...
- HTML5 之 Frame Frameset Noframes 标签
- 银河麒麟加完全自主的龙芯指令集,组合渡劫能否成功
- 对混淆矩阵、F1-Score
- 爪哇国新游记之二十一----快算24