spoj 394
每段可以连续的串的可能性是个Fibonacci数列 但是直接dp更好吧~~
#include <cstdio>
#include <cstring> using namespace std; char a[5010];
int main()
{
while(scanf("%s",a) && strcmp(a, "0"))
{
int len = strlen(a), cur = 1;
int b = a[0] - '0';
unsigned long long k = 1;
for(int i = 1; i < len; i++)
{
if(a[i] == '0')
{
b *= 10;
}
else if(a[i] - '0' + b*10 <= 26)
{
if(a[i+1] != '0')
cur++;
b = a[i] - '0';
}
else
{
unsigned long long d1 = 1, d2 = 2;
if(cur >= 2)
{
for(int j = 2; j < cur; j++)
{
d2 += d1;
d1 = d2 - d1;
}
k *= d2;
}
cur = 1;
b = a[i] - '0';
}
}
if(cur >= 2)
{
unsigned long long d1 = 1, d2 = 2;
for(int j = 2; j < cur; j++)
{
d2 += d1;
d1 = d2 - d1;
}
k *= d2;
}
printf("%llu\n",k);
}
return 0;
}
转一个DP的
#include <stdio.h>
#include <string.h>
#define LL long long
char s[5050];
LL d[5050];
int main()
{
while(scanf("%s",s)==1)
{
int l=strlen(s);
if(l==1&&s[0]=='0')break;
memset(d,0,sizeof(d));
d[0]=1;
for(int i=1;i<=l;i++)
{
if(s[i-1]!='0')
d[i]=d[i-1];
if(i>1&&((s[i-2]=='1'&&s[i-1]>='0')||(s[i-2]=='2'&&s[i-1]<='6'&&s[i-1]>='0')))
{
d[i]+=d[i-2];
}
}
printf("%lld\n",d[l]);
}
return 0;
}
spoj 394的更多相关文章
- BZOJ 2588: Spoj 10628. Count on a tree [树上主席树]
2588: Spoj 10628. Count on a tree Time Limit: 12 Sec Memory Limit: 128 MBSubmit: 5217 Solved: 1233 ...
- SPOJ DQUERY D-query(主席树)
题目 Source http://www.spoj.com/problems/DQUERY/en/ Description Given a sequence of n numbers a1, a2, ...
- SPOJ GSS3 Can you answer these queries III[线段树]
SPOJ - GSS3 Can you answer these queries III Description You are given a sequence A of N (N <= 50 ...
- 【填坑向】spoj COT/bzoj2588 Count on a tree
这题是学主席树的时候就想写的,,, 但是当时没写(懒) 现在来填坑 = =日常调半天lca(考虑以后背板) 主席树还是蛮好写的,但是代码出现重复,不太好,导致调试的时候心里没底(虽然事实证明主席树部分 ...
- SPOJ bsubstr
题目大意:给你一个长度为n的字符串,求出所有不同长度的字符串出现的最大次数. n<=250000 如:abaaa 输出: 4 2 1 1 1 spoj上的时限卡的太严,必须使用O(N)的算法那才 ...
- 【SPOJ 7258】Lexicographical Substring Search
http://www.spoj.com/problems/SUBLEX/ 好难啊. 建出后缀自动机,然后在后缀自动机的每个状态上记录通过这个状态能走到的不同子串的数量.该状态能走到的所有状态的f值的和 ...
- 【SPOJ 1812】Longest Common Substring II
http://www.spoj.com/problems/LCS2/ 这道题想了好久. 做法是对第一个串建后缀自动机,然后用后面的串去匹配它,并在走过的状态上记录走到这个状态时的最长距离.每匹配完一个 ...
- 【SPOJ 8222】Substrings
http://www.spoj.com/problems/NSUBSTR/ clj课件里的例题 用结构体+指针写完模板后发现要访问所有的节点,改成数组会更方便些..于是改成了数组... 这道题重点是求 ...
- SPOJ GSS2 Can you answer these queries II
Time Limit: 1000MS Memory Limit: 1572864KB 64bit IO Format: %lld & %llu Description Being a ...
随机推荐
- HDOJ2005第几天
第几天? Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- android中Json数据保存方式
package com.example.savejsonproject; import java.io.File; import java.io.FileNotFoundException; impo ...
- sql server日期时间转字符串(转)
一.sql server日期时间函数Sql Server中的日期与时间函数 1. 当前系统日期.时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基 ...
- 基于 HTML5 的数据存储
以前想做个静态网页APP.最初的思路是用本地文件存储数据,后来发现在手机上运行时,文件无法找到. 经过了长达几个月的搜索(实际也就几天),没有找到合适的方法. 就在绝望的时候,无意间搜到基于HTML5 ...
- css3学习笔记之文本效果
CSS3的文本阴影 CSS3中,text-shadow属性适用于文本阴影. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 <!DOCTYPE html ...
- jbpm3.2中jbpm.jpdl.mysql.sql文件运行报错的问题
这是一个很久之前遇到的问题,就是用从官网下下载的jbpm组件,它的jbpm.jpdl.mysql.sql不能正常运行.其原因是该sql文件中有一句语句有错误.现在附上正确的jbpm.jpdl.mysq ...
- Linux 进行反编译 或者 汇编
Linux 进行反编译 或者 汇编 一.需要的工具 1.objdump 2. 3.
- 第六章 Qt布局管理器Layout
第六章 Qt布局管理器Layout 大家有没有发现一个现象,我们放置一个组件,给组件最原始的定位是给出这个控件的坐标和宽高值,这样Qt就知道这个组件的位置.当用户改变窗口的大小,组件还静静地呆在原来的 ...
- CCNA第二讲笔记
网络定义:一组由介质(线缆)互联的网络设备(路由器.交换机)和终端系统(PC): 工作组:局域网范畴,范围最小的局域网,且不涉及网络设备.台式机需要有多块网卡,利用双绞线与其他台式机进行互联,扩展性差 ...
- Media Queries——媒体类型
媒体类型(Media Type)在CSS2中是一个常见的属性,也是一个非常有用的属性,可以通过媒体类型对不同的设备指定不同的样式. 在CSS2中常碰到的就是all(全部).screen(屏幕).pri ...