题解

134 条题解

  • 0
    @ 2012-10-27 10:18:56

    用(sqrt(5)-1)/2过不了第九个点,必须得用0.6180339887498949

  • 0
    @ 2010-07-09 11:02:46

    [red]交了N次,出的问题比问题还多。。。

  • 0
    @ 2010-07-06 23:40:08

    用integer没用longint...

    至少也给个60分吧,1分都没有

    正常情况感觉不用判断完美程度相同它自动保存的也是第一次出现的,既然已经排序过

    用2分法的范围弄宽泛点

  • 0
    @ 2009-11-08 15:20:46

    提交了17次,太欢乐了!!!

  • 0
    @ 2009-11-05 18:30:53

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    ___|\__|\__|\__|\__|\__|\__|\__|\__|\__|\__|\__|\__|\__|\__|-

    数据情况有些奇怪.41ms....

    还有就是题目表述绝对有问题,问题说当完美程度相同时输出最小的。我这么做了,连续两次20分,最后去掉了这一步,居然Ac!!!

  • 0
    @ 2009-11-05 13:45:17

    快排+二分查找+模拟

    怎么会对了第二个数据其它全部超时呢??

  • 0
    @ 2009-10-23 08:55:21

    lolanv好可爱哦~

  • 0
    @ 2009-10-15 20:24:51

    总算过了!

    祝贺一下!

  • 0
    @ 2009-10-05 17:07:23

    好猥琐,竟然有0,无效浮点运算...害我交了两次

    双指针,搜一遍即可。

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

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    const hj=0.6180339887498949;

    var n,i:longint;a:array[0..30003]of longint;

    procedure qsort(l,r:longint);

    var i,j,t,x:longint;

    begin

    i:=l;j:=r;

    x:=a[(i+j) shr 1];

    repeat

    while a[i]x do dec(j);

    if ij;

    if l

    • @ 2014-11-07 08:58:02

      find过程第6和8行应该改为k1:=a[i]/a[j-1];和k1:=a[i]/a[j];吧,否则如果最小为0你就WA了

  • 0
    @ 2009-09-19 15:01:04

    可恶的实数精度问题......

    一定要注意啊.....

  • 0
    @ 2009-09-06 20:17:22

    这个程序很诡异。

    1、我看了楼下各位的题解,有的人加了 0.0000000001过的,不加就会WA,但是有的人没有加,照样能过。我的RP很低,不加过不了。

    2、我一开始的程序判零了,但是还是会出现错误200;不知为何;后来重新加了个判零,终于90

    3、然后就过不了了。

    4、对了,还有大批的人写了双指针维护,待会儿试一下。

    XXX好可爱哦

    所有关于精度的问题都很诡异,Bless今年noip不要考这种题。

    编译通过...

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

    ├ 测试数据 02:答案错误... ├ 标准行输出 4475...

     ├ 错误行输出 9923...

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

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

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

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

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

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

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

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

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

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

    附代码:

    const filename='p1237';

    h=0.6180339887498949;

    minn=0.0000000001;

    var

    n,i,j,k,find,xx,p1,p2:longint;

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

    ans,p:double;

    procedure qsort(l,r:longint);

    var i,j,x:longint;

    begin

    i:=l;j:=r;x:=a[i];

    while(i

  • 0
    @ 2009-09-05 00:08:57

    program fly;

    const p=0.6180339887498949;

    var ans1,ans2,i,j,x1,x2,n:longint;

    min:real;

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

    procedure qsort(l,r:longint);

    var i,j,mid, t:longint;

    begin

    i:=l;j:=r; mid :=a[(l+r)div 2];

    repeat

    while a[i]mid do dec(j);

    if ij;

    if l

  • 0
    @ 2009-08-25 12:11:45

    因为精度问题……我的AC率由53%掉到51%……无语……

  • 0
    @ 2009-08-19 17:51: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
    @ 2009-08-03 08:29:57

    精度问题极其严重……

    烦哪

  • 0
    @ 2009-07-24 14:02:05

    快排+二分

    另:

    精度处理为何一定要+0.000000001 but -0.0000000001

    后者90 前者AC

  • 0
    @ 2009-07-24 13:14:08

    一开始我输出了小标....全部WA.............AC率啊

    program P1237;

    const p=0.6180339887498949;

    var a:array[1..30000] of longint;

    r,l,i,j,n,m,a1,a2:longint;

    min:real;

    procedure qsort(t,s:longint);

    var i,j,mid,temp:longint;

    begin

    i:=t; j:=s; mid:=a[(i+j) div 2];

    repeat

    while a[i]mid do dec(j);

    if ij;

    if i

  • 0
    @ 2009-07-24 09:50:03

    哪里错了,求大牛,再也不吃牛肉了(囧TZ)

    program cc;

    const o=0.618033988749849;

    var i,n,j,x,y:longint;

    min,k:real;

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

    procedure kao(x,y:longint);

    var q,h,z,c:longint;

    begin

    if x>=y then exit;

    q:=x;h:=y;

    z:=a[(x+y)div 2];

    while q=z;

    repeat dec(h) until a[h]a[h] then begin c:=a[q];a[q]:=a[h];a[h]:=c; end;

    end;

    kao(x,q);kao(q+1,y);

    end;

    begin

    readln(n);

    for i:=1 to n do

    read(a[i]);

    kao(1,n);

    min:=10000;

    for i:=1 to n-1 do

    begin

    j:=i+1;

    while (j= min then break;

    inc(j);

    end;

    end;

    writeln(x);

    writeln(y);

    end.

  • 0
    @ 2009-07-21 22:00:58

    楼上的321654987自己语文不好别怪别人。

    我WA了几次,发现问题在这几个地方。

    1.a[i]/a[j]前判断a[j]=0吗。

    2.慎用(sqrt(5)-1)/2.

    3

  • 0
    @ 2009-07-21 10:53:36

    MD,信了"测试号"的只有60分,改成if a[i]=0 then inc(i) 和 if a[j]=0 then inc(j) 测试号就AC了!!!

信息

ID
1237
难度
7
分类
其他 | 二分查找 点击显示
标签
递交数
5452
已通过
1050
通过率
19%
被复制
17
上传者