题解

170 条题解

  • 0
    @ 2009-10-05 20:07:29

    这个。难度3么。

  • 0
    @ 2009-10-05 12:51:55

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

    暴力枚举.......一次秒杀.......真是太爽了!!

    procedure yunsuan(x1,x2,x3,x4:real;k:longint);

    begin

    if k=4 then

    begin

    yunsuan(pp(x1,x2,1),x3,x4,0,3);

    yunsuan(pp(x1,x2,2),x3,x4,0,3);

    yunsuan(pp(x1,x2,3),x3,x4,0,3);

    yunsuan(pp(x1,x2,4),x3,x4,0,3);

    yunsuan(pp(x1,x3,1),x2,x4,0,3);

    yunsuan(pp(x1,x3,2),x2,x4,0,3);

    yunsuan(pp(x1,x3,3),x2,x4,0,3);

    yunsuan(pp(x1,x3,4),x2,x4,0,3);

    yunsuan(pp(x1,x4,1),x3,x2,0,3);

    yunsuan(pp(x1,x4,2),x3,x2,0,3);

    yunsuan(pp(x1,x4,3),x3,x2,0,3);

    yunsuan(pp(x1,x4,4),x3,x2,0,3);

    yunsuan(pp(x2,x1,2),x3,x4,0,3);

    yunsuan(pp(x2,x1,3),x3,x4,0,3);

    yunsuan(pp(x2,x1,4),x3,x4,0,3);

    yunsuan(pp(x2,x3,1),x1,x4,0,3);

    yunsuan(pp(x2,x3,2),x1,x4,0,3);

    yunsuan(pp(x2,x3,3),x1,x4,0,3);

    yunsuan(pp(x2,x3,4),x1,x4,0,3);

    yunsuan(pp(x2,x4,1),x1,x3,0,3);

    yunsuan(pp(x2,x4,2),x1,x3,0,3);

    yunsuan(pp(x2,x4,3),x1,x3,0,3);

    yunsuan(pp(x2,x4,4),x1,x3,0,3);

    yunsuan(pp(x3,x1,2),x4,x2,0,3);

    yunsuan(pp(x3,x1,3),x4,x2,0,3);

    yunsuan(pp(x3,x1,4),x4,x2,0,3);

    yunsuan(pp(x3,x2,2),x4,x1,0,3);

    yunsuan(pp(x3,x2,3),x4,x1,0,3);

    yunsuan(pp(x3,x2,4),x4,x1,0,3);

    yunsuan(pp(x3,x4,1),x1,x2,0,3);

    yunsuan(pp(x3,x4,2),x1,x2,0,3);

    yunsuan(pp(x3,x4,3),x1,x2,0,3);

    yunsuan(pp(x3,x4,4),x1,x2,0,3);

    yunsuan(pp(x4,x1,2),x2,x3,0,3);

    yunsuan(pp(x4,x1,3),x2,x3,0,3);

    yunsuan(pp(x4,x1,4),x2,x3,0,3);

    yunsuan(pp(x4,x2,2),x1,x3,0,3);

    yunsuan(pp(x4,x2,3),x1,x3,0,3);

    yunsuan(pp(x4,x2,4),x1,x3,0,3);

    yunsuan(pp(x4,x3,2),x1,x2,0,3);

    yunsuan(pp(x4,x3,3),x1,x2,0,3);

    yunsuan(pp(x4,x3,4),x1,x2,0,3);

    end;

    if k=3 then

    begin

    yunsuan(pp(x1,x2,1),x3,0,0,2);

    yunsuan(pp(x1,x2,2),x3,0,0,2);

    yunsuan(pp(x1,x2,3),x3,0,0,2);

    if x20 then

    yunsuan(pp(x1,x2,4),x3,0,0,2);

    yunsuan(pp(x1,x3,1),x2,0,0,2);

    yunsuan(pp(x1,x3,2),x2,0,0,2);

    yunsuan(pp(x1,x3,3),x2,0,0,2);

    if x30 then

    yunsuan(pp(x1,x3,4),x2,0,0,2);

    yunsuan(pp(x2,x1,2),x3,0,0,2);

    yunsuan(pp(x2,x1,3),x3,0,0,2);

    if x10 then

    yunsuan(pp(x2,x1,4),x3,0,0,2);

    yunsuan(pp(x2,x3,1),x1,0,0,2);

    yunsuan(pp(x2,x3,2),x1,0,0,2);

    yunsuan(pp(x2,x3,3),x1,0,0,2);

    if x30 then

    yunsuan(pp(x2,x3,4),x1,0,0,2);

    yunsuan(pp(x3,x1,2),x2,0,0,2);

    yunsuan(pp(x3,x1,3),x2,0,0,2);

    if x10 then

    yunsuan(pp(x3,x1,4),x2,0,0,2);

    yunsuan(pp(x3,x2,2),x1,0,0,2);

    yunsuan(pp(x3,x2,3),x1,0,0,2);

    if x20 then

    yunsuan(pp(x3,x2,4),x1,0,0,2);

    end;

    if k=2 then

    begin

    if pp(x1,x2,1)=24 then ex;

    if pp(x1,x2,2)=24 then ex;

    if pp(x1,x2,3)=24 then ex;

    if x20 then

    if pp(x1,x2,4)=24 then ex;

    if pp(x2,x1,2)=24 then ex;

    if pp(x2,x1,3)=24 then ex;

    if x10 then

    if pp(x2,x1,4)=24 then ex;

    end;

    end;

    Ps:我承认最近很无聊....做初赛的计算题快疯了,刚好练练细心~

  • 0
    @ 2009-10-06 12:25:34

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    注意有6种运算A+B A*B A-B B-A A/B B/A

    注意被0除

    注意每张牌不能重复

    然后就暴搜吧

    program s1134;

    var i,j,l,k,m:longint; ch,ss:char;

    w:array[0..4] of extended;

    flag:boolean;

    function ww(o:integer;x,y:extended):extended;

    begin

    if (o=4) and (y=0) then begin flag:=true; exit(0); end;

    if (o=5) and (x=0) then begin flag:=true; exit(0); end;

    case o of

    1: exit(x+y);

    2: exit(x-y);

    3: exit(x*y);

    4: exit(x/y);

    5: exit(y/x);

    6: exit(y-x);

    end;

    end;

    procedure search(x,y,z,v:longint);

    var i,j,l,k:longint;

    a,b,c,d,ans:extended;

    begin

    x:=x mod 4; y:=y mod 4; z:=z mod 4; v:=v mod 4;

    if (x=z) or (x=v) or (y=v) or (x=y) or (y=z) then exit;

    a:=w[x]; b:=w[y]; c:=w[z]; d:=w[v];

    for i:=1 to 6 do

    for j:=1 to 6 do

    for k:=1 to 6 do

    begin

    flag:=false;

    ans:=ww(k,ww(j,ww(i,a,b),c),d);

    if flag then continue;

    if abs(ans-24)

  • 0
    @ 2009-09-09 22:09:15

    编译通过...

    ├ 测试数据 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-03 23:38:35

    擦。。。

    忘了A是1了。。。

  • 0
    @ 2009-08-31 14:12:18

    编译通过...

    ├ 测试数据 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-08-29 18:31:14

    楼下“雨中的风筝”太牛X了,这才是真正的暴搜。

    AC

  • 0
    @ 2009-08-28 16:36:36

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    纯暴力 菜竟然把一个 i和j搞错 三次90分 T_T

  • 0
    @ 2009-08-25 21:22:39

    纯暴力。

    注意A。

  • 0
    @ 2009-08-25 19:51:58

    122行的超级无敌全枚举,膜拜楼下的chiccs大牛短小精悍的程序。。。不过好像没有人像我这么写,所以发一个。。。

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    program p1134;

    var

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

    i,j:longint;

    s,s1:string;

    pd:boolean;

    function p(b,c,d,e:longint):boolean;

    begin

    p:=false;

    if abs((b+c+d+e)-24)

  • 0
    @ 2009-08-25 10:12:13

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    var st1,st2:string;

    st:array[0..10]of string;

    i,j,k:longint;

    f1:array[0..100]of string;

    w,f,l,q,h:longint;

    e,x,a,b,c,d,u,v:array[0..100]of longint;

    i1,j1,k1,ch:char;

    function op(x,y:longint; g:char):longint;

    begin

    inc(w);

    if g='/' then

    begin

    if (y0)and(x mod y=0) then

    begin

    str(y,st1);

    str(x,st2);

    st[w]:=st2+g+st1+'=';

    op:=x div y;

    str(op,st1);

    st[w]:=st[w]+st1;

    end

    else

    if (x0)and(y mod x=0) then

    begin

    str(y,st1);

    str(x,st2);

    st[w]:=st1+g+st2+'=';

    op:=y div x;

    str(op,st1);

    st[w]:=st[w]+st1;

    end

    else

    begin

    op:=-maxint;

    exit;

    end;

    end

    else

    if x>y then

    begin

    str(x,st1);

    str(y,st2);

    st[w]:=st1+g+st2+'=';

    case g of

    '+':op:=x+y;

    '-':op:=x-y;

    '*':op:=x*y;

    end;

    str(op,st1);

    st[w]:=st[w]+st1;

    end

    else

    begin

    str(x,st1);

    str(y,st2);

    st[w]:=st2+g+st1+'=';

    case g of

    '+':op:=x+y;

    '-':op:=y-x;

    '*':op:=x*y;

    end;

    str(op,st1);

    st[w]:=st[w]+st1;

    end;

    end;

    procedure zhao(dep:longint);

    var i:longint;

    begin

    if dep>4 then

    begin

    inc(q);

    a[q]:=e[1];

    b[q]:=e[2];

    c[q]:=e[3];

    d[q]:=e[4];

    end

    else

    begin

    for i:=1 to 4 do

    if u[i]=0 then

    begin

    u[i]:=1;

    e[dep]:=x[i];

    zhao(dep+1);

    u[i]:=0;

    end;

    end;

    end;

    begin

    for i:=1 to 3 do

    begin

    read(ch);

    while ch' ' do

    begin

    f1[i]:=f1[i]+ch;

    read(ch);

    end;

    end;

    while not(eoln) do

    begin

    read(ch);

    f1[4]:=f1[4]+ch;

    end;

    for i:=1 to 4 do

    begin

    if f1[i]='A' then x[i]:=1;

    if f1[i]='2' then x[i]:=2;

    if f1[i]='3' then x[i]:=3;

    if f1[i]='4' then x[i]:=4;

    if f1[i]='5' then x[i]:=5;

    if f1[i]='6' then x[i]:=6;

    if f1[i]='7' then x[i]:=7;

    if f1[i]='8' then x[i]:=8;

    if f1[i]='9' then x[i]:=9;

    if f1[i]='10' then x[i]:=10;

    if f1[i]='J' then x[i]:=11;

    if f1[i]='Q' then x[i]:=12;

    if f1[i]='K' then x[i]:=13;

    end;

    zhao(1);

    fillchar(u,sizeof(u),0);

    for h:=1 to 24 do

    for i:=1 to 4 do

    for j:=1 to 4 do

    for k:=1 to 4 do

    begin

    case i of

    1:i1:='+';

    2:i1:='-';

    3:i1:='*';

    4:i1:='/';

    end;

    case j of

    1:j1:='+';

    2:j1:='-';

    3:j1:='*';

    4:j1:='/';

    end;

    case k of

    1:k1:='+';

    2:k1:='-';

    3:k1:='*';

    4:k1:='/';

    end;

    w:=0;

    f:=op(op(c[h],d[h],k1),op(a[h],b[h],i1),j1);

    if f=24 then

    begin

    writeln(1);

    halt;

    end;

    w:=0;

    f:=op(op(op(a[h],b[h],i1),c[h],j1),d[h],k1);

    if f=24 then

    begin

    writeln(1);

    halt;

    end;

    w:=0;

    f:=op(op(a[h],op(b[h],c[h],j1),i1),d[h],k1);

    if f=24 then

    begin

    writeln(1);

    halt;

    end;

    w:=0;

    f:=op(a[h],op(op(b[h],c[h],j1),d[h],k1),i1);

    if f=24 then

    begin

    writeln(1);

    halt;

    end;

    w:=0;

    f:=op(a[h],op(b[h],op(c[h],d[h],k1),j1),i1);

    if f=24 then

    begin

    writeln(1);

    halt;

    end;

    w:=0;

    f:=op(a[h],op(b[h],op(c[h],d[h],k1),j1),i1);

    if f=24 then

    begin

    writeln(1);

    halt;

    end;

    end;

    writeln(0);

    end.

    为什么又一次AC啊

  • 0
    @ 2009-08-23 13:19:50

    看楼下好猥琐的程序……

    我还是贴上一个我的吧……以供后世参考……

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    var

    i:longint;

    s,ts:string;

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

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

    procedure outit(x:longint);

    begin

    if x=24 then

    begin

    writeln(1);

    halt;

    end;

    end;

    procedure dfs(i,last:longint);

    var

    j:longint;

    begin

    if i=4 then outit(last);

    for j:=1 to 4 do

    if not v[j] then

    begin

    v[j]:=true;

    dfs(i+1,a[j]+last);

    dfs(i+1,last-a[j]); dfs(i+1,a[j]-last);

    dfs(i+1,a[j]*last);

    if last0 then if a[j] mod last=0 then dfs(i+1,a[j] div last);

    if a[j]0 then if last mod a[j]=0 then dfs(i+1,last div a[j]);

    v[j]:=false;

    end;

    end;

    begin

    readln(s);

    for i:=1 to 3 do

    begin

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

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

    if ts[1] in ['0'..'9'] then val(ts,a[i])

    else case ts[1] of

    'J':a[i]:=11;

    'Q':a[i]:=12;

    'K':a[i]:=13;

    'A':a[i]:=1;

    end;

    end;

    if s[1] in ['0'..'9'] then val(s,a[4])

    else case s[1] of

    'J':a[4]:=11;

    'Q':a[4]:=12;

    'K':a[4]:=13;

    'A':a[4]:=1;

    end;

    fillchar(v,sizeof(v),false);

    for i:=1 to 4 do

    begin

    v[i]:=true;

    dfs(1,a[i]);

    v[i]:=false;

    end;

    writeln(0);

    end.

  • 0
    @ 2009-08-23 11:30:57

    注意:4个数都要用完后结果才是可判断的....

    program p1134;

    type check=array[1..4] of boolean;

    var s:string;

    i,j,p:integer;

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

    c:check;

    function test(s0:string):integer;

    begin

    if (length(s0)=1) and (ord(s0[1]) in [48..57]) then test:=ord(s0[1])-48

    else if s0='10' then test:=10 else if s0='A' then test:=1

    else if s0='J' then test:=11 else if s0='Q' then test:=12 else test:=13;

    end;

    procedure search(x:real;hash:check);

    var k:integer;

    begin

    if (abs(x-24)>0.00001) and (hash[1]=false) and (hash[2]=false) and (hash[3]=false) and (hash[4]=false)

    then exit;

    if (abs(x-24)0 do

    begin

    p:=pos(' ',s);

    i:=i+1;

    a[i]:=test(copy(s,1,p-1));

    delete(s,1,p);

    end;

    for i:=1 to 4 do

    for j:=1 to 4 do

    if ij then

    begin

    fillchar(c,4,true);

    c[i]:=false;c[j]:=false;

    search(a[i]+a[j],c);

    search(a[i]*a[j],c);

    search(a[i]/a[j],c);

    search(a[i]-a[j],c);

    end;

    writeln(0);

    end.

  • 0
    @ 2009-08-18 23:13:32

    交了四次终于A了。。。。⊙﹏⊙b汗~~~

    没有注意到10的情况,不过数据小到可以过9个点。。。

    暴汗ing...

    暴搜,死搜,直搜,硬搜,狂搜。。。

    程序巨水。。。

  • 0
    @ 2009-08-15 21:26:51

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    dfs

  • 0
    @ 2009-08-13 21:26:39

    来来,大家算一下这个,(438·645·438·645);哈哈!

  • 0
    @ 2009-08-04 19:37:58

    没天理了 !!

    刚开始没注意1是A 90!

    const

    err=0.00001;

    type

    tt=record

    d:array[1..4]of real;

    l:integer

    end;

    var

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

    i,i1,i2,i3,code:integer;

    x,s:string;

    stack:tt;

    procedure dfs(dep:integer;s0:tt);

    var

    x1,x2:real;

    begin

    if dep=0 then

    begin

    if abs(s0.d[s0.l]-24)

  • 0
    @ 2009-08-03 16:33:28

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    一次秒杀

    这么水的水题 我写了比它更水的水程序

    嘿嘿....

    思想很简单

    在剩下的数里面任意取出2个 对这两个数进行运算操作

    我先是对4个里取出2个操作 合并成3个

    然后从3个里面取出2个操作 合并成2个

    对2个数字运算 看看能不能得到24

    思想很水啊

    程序更水

    (忽然发现 写这么水的程序 复制粘贴 很有用!!!!!O(∩_∩)O)

    饿 我要公布了...大牛可以尽情BS或WS我....

    (诶 我看到自己的程序都不得不BS我自己啊 (#‵′)凸)

    ---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|-巨水程序---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|

    program p1134;

    const num='ABCDEFGHIEJQK';

    var st:string;

    a:array[1..10] of integer;

    procedure init; //读入四个数字

    var i,j,l:longint;

    ch:char;

    begin

    readln(st);

    l:=length(st);

    i:=0; j:=0;

    repeat

    inc(j); ch:=st[j];

    inc(i);

    if pos(ch,num)>0 then a[i]:=pos(ch,num)

    else begin

    a[i]:=ord(ch)-ord('0');

    if a[i]=1 then begin a[i]:=10; inc(j); end;

    end;

    if j=l then break;

    inc(j);

    until 1=2;

    end;

    procedure search2(a1,a2:real); //对剩下2个数进行运算

    begin

    if a1+a2=24 then begin writeln(1); halt; end;

    if a1*a2=24 then begin writeln(1); halt; end;

    if a1-a2=24 then begin writeln(1); halt; end;

    if a2-a1=24 then begin writeln(1); halt; end;

    if a20 then if a1/a2=24 then begin writeln(1); halt; end;

    if a10 then if a2/a1=24 then begin writeln(1); halt; end;

    end;

    procedure search3(a1,a2,a3:real); //对剩下3个数进行运算

    begin

    search2(a1+a2,a3); search2(a1+a3,a2); search2(a2+a3,a1);

    search2(a1*a2,a3); search2(a1*a3,a2); search2(a2*a3,a1);

    search2(a1-a2,a3); search2(a1-a3,a2); search2(a2-a3,a1);

    search2(a2-a1,a3); search2(a3-a1,a2); search2(a3-a2,a1);

    if a20 then search2(a1/a2,a3);

    if a30 then search2(a1/a3,a2);

    if a30 then search2(a2/a3,a1);

    if a10 then search2(a2/a1,a3);

    if a10 then search2(a3/a1,a2);

    if a20 then search2(a3/a2,a1);

    end;

    procedure search4(a1,a2,a3,a4:real); //对剩下4个数进行运算

    begin

    search3(a1+a2,a3,a4); search3(a1+a3,a2,a4); search3(a1+a4,a2,a3);

    search3(a2+a3,a1,a4); search3(a2+a4,a1,a3); search3(a3+a4,a1,a2);

    search3(a1*a2,a3,a4); search3(a1*a3,a2,a4); search3(a1*a4,a2,a3);

    search3(a2*a3,a1,a4); search3(a2*a4,a1,a3); search3(a3*a4,a1,a2);

    search3(a1-a2,a3,a4); search3(a1-a3,a2,a4); search3(a1-a4,a2,a3);

    search3(a2-a3,a1,a4); search3(a2-a4,a1,a3); search3(a3-a4,a1,a2);

    search3(a2-a1,a3,a4); search3(a3-a1,a2,a4); search3(a4-a1,a2,a3);

    search3(a3-a2,a1,a4); search3(a4-a2,a1,a3); search3(a4-a3,a1,a2);

    if a20 then search3(a1/a2,a3,a4);

    if a30 then search3(a1/a3,a2,a4);

    if a40 then search3(a1/a4,a2,a3);

    if a30 then search3(a2/a3,a1,a4);

    if a40 then search3(a2/a4,a1,a3);

    if a40 then search3(a3/a4,a1,a2);

    if a30 then search3(a2/a1,a3,a4);

    if a20 then search3(a3/a1,a2,a4);

    if a20 then search3(a4/a1,a2,a3);

    if a10 then search3(a3/a2,a1,a4);

    if a10 then search3(a4/a2,a1,a3);

    if a10 then search3(a4/a3,a1,a2);

    end;

    begin

    init;

    search4(a[1],a[2],a[3],a[4]);

    writeln(0);

    end.

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

    我觉得这才叫裸搜吗 有没有(+﹏+)~狂晕 的感觉

    哈哈 我自己都要 囧rz我自己了

  • 0
    @ 2009-07-31 16:07:02

    一道难度为3的水题

    做法:暴搜,裸搜,*搜……

  • 0
    @ 2009-07-31 10:48:01

    Flag   Accepted

    题号   P1134

    类型(?)   搜索

    通过   1000人

    提交   5257次

    通过率   19%

    难度   3

    精度啊~~~

信息

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