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 ...
随机推荐
- Jquery选择器 讲解
在Dom 编程中我们只能使用有限的函数根据id 或者TagName 获取Dom 对象. 然而在jQuery 中则完全不同,jQuery 提供了异常强大的选择器用来帮助我们获取页面上的对象, 并且将对象 ...
- Servlet之过滤器
Servlet的介绍: Servlet API 中定义了三个接口类来开供开发人员编写 Filter 程序:Filter, FilterChain, FilterConfig Filter 程序是一个实 ...
- TM4C123GH6PM程序
模式一&模式二:单次计时&周期计时/******************************************* 开发坏境:CCSv5.4 开发板:TIVA C Launch ...
- asp.net sql无限极分类实例程序
数据库结构 代码如下 复制代码 create table category( id int, clsno ...
- OC1_类方法的内存管理
// // Dog.h // OC1_类方法的内存管理 // // Created by zhangxueming on 15/6/19. // Copyright (c) 2015年 zhangxu ...
- 问题解决:引入com.sun.management.OperatingSystemMXBean 出错
不能import com.sun.management.OperatingSystemMXBean 解决: Eclipse默认把这些受访问限制的API设成了ERROR.只要把Windows-Pref ...
- HotSpot算法实现
1.枚举根节点 可作为GC Roots的节点主要在全局性的引用(例如常量或类静态属性)与执行上下文(例如栈帧中的本地变量表)中. 可达性分析对执行时间的敏感体现在GC停顿上,因为分析工作必须在能确保一 ...
- linux网络编程九:splice函数,高效的零拷贝
from:http://blog.csdn.net/jasonliuvip/article/details/22600569 linux网络编程九:splice函数,高效的零拷贝 最近在看<Li ...
- 就谈个py 的装饰器 decorator
很早很早就知道有这么个 装饰器的东西,叫的非常神秘. 包括c# 和 java 中都有这个东西, c#中叫做attribut 特性,java中叫做Annotation 注解,在偷偷学习c#教程的时候, ...
- Python入门二:函数
一.函数的定义和使用 1.基本结构: def 函数名(参数): """ 文档字符串 """ 函数体 返回值 2.函数名: 和变量名命名规则一 ...