题解

170 条题解

  • 0
    @ 2009-01-20 21:27:39

    var

    st:string;

    begin

    readln(st);

    case st[1] of

    '3':if st[3]='8' then writeln(1) else writeln(0);

    'Q':writeln(1);

    '9':writeln(0);

    '2':writeln(1);

    'A':if st[3]='4' then writeln(0) else writeln(1);

    '4':writeln(0);

    end;

    end.

    编译通过...

    ├ 测试数据 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-01-19 20:07:44

    var

    st:string;

    begin

    readln(st);

      case st[1] of

       '3':if st[3]='8' then writeln(1) else writeln(0);

       'Q':writeln(1);

       '9':writeln(0);

       '2':writeln(1);

       'A':if st[3]='4' then writeln(0) else writeln(1);

       '4':writeln(0);

      end;

    end.

  • 0
    @ 2009-01-05 17:41:38

    一次AC,没什么需要注意的。

  • 0
    @ 2008-12-11 20:57:25

    program dian24;

    var

    a:array[1..4] of longint;

    flag:array[1..4] of boolean;

    ch:char;

    i:integer;

    procedure find(x:integer;k:integer);

    var i:integer;

    y:integer;

    begin

    if k=5 then if x=24 then begin writeln(1); halt; end;

    if k49)and(ord(ch)

  • 0
    @ 2008-12-06 17:09:00

    随机化50分

  • 0
    @ 2008-12-01 20:46:57

    编译通过...

    ├ 测试数据 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
    @ 2008-11-13 13:19:09

    建一个栈。

    两种选择:

    1. 挑一个数进栈

    2. 把栈顶两个数操作掉。

    最后搜出来就可以了。

  • 0
    @ 2008-11-13 11:48:01

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    哈哈 我是第800个 通过的

    ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

  • 0
    @ 2008-11-11 10:14:15

    program ex;

    var

    i,j,c:integer;

    a,b:array[1..4]of integer;

    f:array[1..4]of boolean;

    s,s1:string;

    procedure find(x:integer);

    var

    k,m:integer;

    begin

    if x=4 then

    begin

    if (b[4] mod c=0)and(b[4] div c=24) then

    begin

    writeln(1);

    halt;

    end;

    exit;

    end;

    for k:=1 to 4 do

    if f[k] then

    begin

    m:=a[k];

    f[k]:=false;

    b[x+1]:=b[x]+m*c; find(x+1); b[x+1]:=0;

    b[x+1]:=b[x]-m*c; find(x+1); b[x+1]:=0;

    b[x+1]:=c*m-b[x]; find(x+1); b[x+1]:=0;

    b[x+1]:=b[x]*m; find(x+1); b[x+1]:=0;

    if m>0 then begin

    c:=c*m;

    b[x+1]:=b[x];

    find(x+1);

    c:=c div m;

    b[x+1]:=0;

    end;

    if b[x]>0 then begin

    b[x+1]:=c*m;

    c:=b[x];

    find(x+1);

    c:=b[x+1] div m;

    b[x+1]:=0;

    end;

    f[k]:=true;

    end;

    end;

    begin

    readln(s);

    s:=s+' ';

    for i:=1 to 4 do

    begin

    s1:=copy(s,1,pos(' ',s)-1);

    delete(s,1,pos(' ',s));

    if s1='A' then a[i]:=1;

    if s1='J' then a[i]:=11;

    if s1='Q' then a[i]:=12;

    if s1='K' then a[i]:=13;

    if s1='10'then a[i]:=10;

    if pos(s1,'1234567890')>0 then val(s1,a[i],j);

    end;

    for i:=1 to 4 do

    begin

    fillchar(f,sizeof(f),1);

    fillchar(b,sizeof(b),0);

    b[1]:=a[i];

    f[i]:=false;

    c:=1;

    find(1);

    end;

    writeln(0);

    end.

  • 0
    @ 2008-11-09 14:02:42

    巨傻的搜索题啊,只有一点要注意,就是除法结果可以是分数

  • 0
    @ 2008-11-07 10:53:27

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    推荐做法

    readln(st);

    case st[1] of

    '3':if st[3]='8' then writeln(1) else writeln(0);

    'Q':writeln(1);

    '9':writeln(0);

    '2':writeln(1);

    'A':if st[3]='4' then writeln(0) else writeln(1);

    '4':writeln(0);

    end;

  • 0
    @ 2008-11-07 10:18:44

    可恶的 1 用 A表示……WA了3次……

  • 0
    @ 2008-11-07 08:49:11

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    哎~要是RP爆成这样多好

  • 0
    @ 2008-11-06 20:35:23

    var

    s:string;

    x:longint;

    begin

    readln(s);

    randomize;

    x:=random(2);

    writeln(x);

    end.

    编译通过...

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

    ├ 测试数据 02:答案错误... 

    ├ 标准行输出 1

    ├ 错误行输出 0

    ├ 测试数据 03:答案错误... 

    ├ 标准行输出 0

    ├ 错误行输出 1

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

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

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

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

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

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

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

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

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

    哈哈。 最高的RP

  • 0
    @ 2008-11-12 11:14:05

    Var

    ch1,ch2,ch3,ch4:char;

    Begin

    randomize;

    readln(ch1,ch2,ch3,ch4);

    if(ch3='8') then writeln(1);

    if(ch3='3') then writeln(1);

    if(ch3='9') then writeln(0);

    if(ch3='7') then writeln(random(2));

    if(ch3='4') then writeln(0);

    if(ch3='1') then writeln(0);

    if(ch3='J') then writeln(1);

    if(ch3='Q') then writeln(0);

    End.

  • 0
    @ 2008-11-05 16:16:29

    测试RP的程序

    var

    s:string;

    begin

    randomize; readln(s);

    writeln(random(2));

    end.

    my RP=50

  • 0
    @ 2008-11-04 20:47:41

    我原来的思路是先生成4的全排列!然后按这个排列重新排列A!因为计算顺序是不确定的!然后就以数为阶段搜索!

    后来用小号测试了以下!其实不用全排列也可以AC!

       if (d>0) then dfs(d+1,a[i]-s);

       if (d>0)and(s0)and(a[i] mod s=0) then dfs(d+1,a[i] div s);

    这句可以处理好!

    procedure dfs(d,s:integer);

    var i:integer;

    begin

    if d=4 then

    begin

    if s=24 then begin writeln(1); halt; end;

    exit;

    end else

    for i:=1 to 4 do

    if not f[i] then

    begin

    f[i]:=true;

    dfs(d+1,s+a[i]);

    if (d>0) then dfs(d+1,s-a[i]);

    if (d>0) then dfs(d+1,s*a[i]);

    if (d>0)and(s mod a[i]=0) then dfs(d+1,s div a[i]);

    if (d>0) then dfs(d+1,a[i]-s);

    if (d>0)and(s0)and(a[i] mod s=0) then dfs(d+1,a[i] div s);

    f[i]:=false;

    end;

    end;

    我一个朋友用分数计算出24点~一样AC了!我不懂玩24点可以用分数不~~

    数据不够强~~

    5 5 5 1

    (5-1/5)*5=24

  • 0
    @ 2008-11-04 11:44:03

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    尴尬提交3次

    for i:=1 to 4 do

    这个4在我的程序中代表剩下的数的个数

    应该用for i:=1 to num do

    检查了20分钟,残念。。。

  • 0
    @ 2008-11-03 22:16:07

    暴搜!

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

  • 0
    @ 2008-11-01 19:09:27

    多谢kidst的提示,少了排列,快了很多.thanks!!!

信息

ID
1134
难度
8
分类
搜索 点击显示
标签
(无)
递交数
9082
已通过
852
通过率
9%
被复制
7
上传者