题解

48 条题解

  • 1
    @ 2016-03-23 19:51:13

    var
    f:array [0..5000] of longint;
    s:ansistring;
    l,i:longint;
    begin
    readln(s);
    while (s<>'0') do
    begin
    fillchar(f,sizeof(f),0);
    l:=length(s); f[0]:=1;
    s:=s+'9';
    for i:=0 to l-1 do
    begin
    if (s[i+1]<>'0') then f[i+1]:=f[i+1]+f[i];
    if (s[i+1]='1') or ((s[i+1]='2') and (s[i+2]<='6')) then f[i+2]:=f[i+2]+f[i];
    end;
    writeln(f[l]);
    readln(s);
    end;
    end.

  • 1
    @ 2007-08-27 10:58:04

    大家开到5000就可以了

    用a[i]来记录到第i个数字为止,有多少种解密方式。分三种情况:

    1、 第i个数字是0,那么势必第i-1个数字是1或2(不用检查),只能一起使用,所以a[i]=a。

    2、 第i个数字不是0。第i-1个数字是1,或者第i-1个数字是2且第i个数字是1到6的,此时它可以单独,也可以和前面的一起使用,所以a[i]=a+a。

    3、 所有其他情况下,只能单独使用,所以a[i]=a。

  • 0
    @ 2015-09-13 00:27:02

    4100。。。真的不是来玩我的吗。。?

  • 0
    @ 2009-11-10 15:03:40

    编译通过...

    ├ 测试数据 01:答案正确... 0ms

    ├ 测试数据 02:答案正确... 0ms

    ├ 测试数据 03:答案正确... 0ms

    ├ 测试数据 04:答案正确... 0ms

    ├ 测试数据 05:答案正确... 0ms

    ├ 测试数据 06:答案正确... 0ms

    ├ 测试数据 07:答案正确... 0ms

    ├ 测试数据 08:答案正确... 0ms

    ├ 测试数据 09:答案正确... 0ms

    ├ 测试数据 10:答案正确... 0ms

    ---|---|---|---|---|---|---|---|-

    Accepted 有效得分:100 有效耗时:0ms

    呜呜呜呜~~~水题~3遍啊……注意0的情况~

  • 0
    @ 2009-11-01 23:27:36

    做水题也要仔细、、题目简单、陷阱肯定多、

    教训教训、

  • 0
    @ 2009-10-05 21:45:24

    编译通过...

    ├ 测试数据 01:答案正确... 0ms

    ├ 测试数据 02:答案正确... 0ms

    ├ 测试数据 03:答案正确... 0ms

    ├ 测试数据 04:答案正确... 0ms

    ├ 测试数据 05:答案正确... 0ms

    ├ 测试数据 06:答案正确... 0ms

    ├ 测试数据 07:答案正确... 0ms

    ├ 测试数据 08:答案正确... 0ms

    ├ 测试数据 09:答案正确... 0ms

    ├ 测试数据 10:答案正确... 0ms

    ---|---|---|---|---|---|---|---|-

    Accepted 有效得分:100 有效耗时:0ms

    鉴定完毕~~~沙茶题!

    我就郁闷了通过率咋就这么低捏!

  • 0
    @ 2009-09-25 22:31:38

    这WS的沙茶题目让我交了4次..

  • 0
    @ 2009-09-14 22:39:28

    编译通过...

    ├ 测试数据 01:答案正确... 0ms

    ├ 测试数据 02:答案正确... 0ms

    ├ 测试数据 03:答案正确... 0ms

    ├ 测试数据 04:答案正确... 0ms

    ├ 测试数据 05:答案正确... 0ms

    ├ 测试数据 06:答案正确... 0ms

    ├ 测试数据 07:答案正确... 0ms

    ├ 测试数据 08:答案正确... 0ms

    ├ 测试数据 09:答案正确... 0ms

    ├ 测试数据 10:答案正确... 0ms

    ---|---|---|---|---|---|---|---|-

    Accepted 有效得分:100 有效耗时:0ms

    string=10

    ansistring=100

  • 0
    @ 2009-09-14 17:24:18

    囧啊.....

    if ((s='1') or (s='2')) and s[i]

  • 0
    @ 2009-09-03 17:20:04

    挺简单的,不过我居然忘记0和一位数的情况

  • 0
    @ 2009-08-29 15:01:10

    比较简单但难想到的DP。。。(才怪)

    如果不想用数组的话就要用ansistring

    。。。。

  • 0
    @ 2009-08-29 03:35:34

    24行 这么简单的题怎么没人做

  • 0
    @ 2009-08-21 16:35:43

    编译通过...

    ├ 测试数据 01:答案正确... 0ms

    ├ 测试数据 02:答案正确... 0ms

    ├ 测试数据 03:答案正确... 0ms

    ├ 测试数据 04:答案正确... 0ms

    ├ 测试数据 05:答案正确... 0ms

    ├ 测试数据 06:答案正确... 0ms

    ├ 测试数据 07:答案正确... 0ms

    ├ 测试数据 08:答案正确... 0ms

    ├ 测试数据 09:答案正确... 0ms

    ├ 测试数据 10:答案正确... 0ms

    var

    a:array[0..6000] of longint;

    s:ansistring;

    procedure solve;

    var

    i,j:longint;

    begin

    fillchar(a,sizeof(a),0);

    a[0]:=1;

    for i:=1 to length(s) do

    begin

    if s[i]='0' then

    begin

    a[i]:=a;

    continue;

    end;

    if (s='1') or ((s='2') and (s[i]

  • 0
    @ 2009-08-11 11:58:14

    27行秒杀~

    注意万恶的0就行拉~水题~

  • 0
    @ 2009-08-10 17:15:23

    万恶的0!

    一排排同志倒下了!

    if s[i]='0' then

    f[i]:=f else

    if (s='1') or ((s='2') and (s[i]

  • 0
    @ 2009-08-07 21:58:35

    编译通过...

    ├ 测试数据 01:答案错误...程序输出比正确答案短

    ├ 测试数据 02:答案正确... 0ms

    ├ 测试数据 03:答案正确... 0ms

    ├ 测试数据 04:答案正确... 0ms

    ├ 测试数据 05:答案正确... 0ms

    ├ 测试数据 06:答案正确... 0ms

    ├ 测试数据 07:答案正确... 0ms

    ├ 测试数据 08:答案正确... 0ms

    ├ 测试数据 09:答案正确... 0ms

    ├ 测试数据 10:答案正确... 0ms

    ---|---|---|---|---|---|---|---|-

    Unaccepted 有效得分:90 有效耗时:0ms

    #include

    #include

    using namespace std;

    int main()

    {

    int f[6000],len,i;

    string x;

    memset(f,0,sizeof(f));

    cin >> x;

    while(!(x=="0"))

    {

    len=x.length();

    f[0]=1;

    if(x[0]=='1'&&x[1]!='0'||x[0]=='2'&&x[1]

  • 0
    @ 2009-08-04 13:09:04

    编译通过...

    ├ 测试数据 01:答案正确... 0ms

    ├ 测试数据 02:答案正确... 0ms

    ├ 测试数据 03:答案正确... 0ms

    ├ 测试数据 04:答案正确... 0ms

    ├ 测试数据 05:答案正确... 0ms

    ├ 测试数据 06:答案正确... 0ms

    ├ 测试数据 07:答案正确... 0ms

    ├ 测试数据 08:答案正确... 0ms

    ├ 测试数据 09:答案正确... 0ms

    ├ 测试数据 10:答案正确... 0ms

    ---|---|---|---|---|---|---|---|-

    Accepted 有效得分:100 有效耗时:0ms

    0没考虑,郁闷

  • 0
    @ 2009-07-27 16:37:36

    编译通过...

    ├ 测试数据 01:答案正确... 0ms

    ├ 测试数据 02:答案错误...程序输出比正确答案长

    ├ 测试数据 03:答案正确... 0ms

    ├ 测试数据 04:答案正确... 0ms

    ├ 测试数据 05:答案正确... 0ms

    ├ 测试数据 06:答案正确... 0ms

    ├ 测试数据 07:答案正确... 0ms

    ├ 测试数据 08:答案正确... 0ms

    ├ 测试数据 09:答案正确... 0ms

    ├ 测试数据 10:答案正确... 0ms

    ---|---|---|---|---|---|---|---|-

    Unaccepted 有效得分:90 有效耗时:0ms

    哪里错了啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊

    var

    s:ansistring;

    f1,f2,f3,i,j,k:longint;

    begin

    readln(s);

    while not(s='0') do

    begin

    f1:=1; f2:=1;

    for i:=2 to length(s) do

    begin

    if s[i]='0' then

    f3:=f1

    else

    if (s='1')or((s='2')and(s[i]

  • 0
    @ 2009-02-05 21:38:16

    阳光总在风雨后 。。。。

    4次

    被0还惨了

    我的通过率阿

  • 0
    @ 2009-01-29 17:34:25

    把0的情况考虑清楚了就能AC。

    具体见楼下的吧,我就不说了……

信息

ID
1342
难度
6
分类
动态规划 点击显示
标签
(无)
递交数
928
已通过
280
通过率
30%
被复制
5
上传者