170 条题解

  • 0
    @ 2009-11-08 13:52:27

    wuzhixin123抄我的,还没输出!!!!!!

  • 0
    @ 2009-11-08 13:50:39

    var

    i,j,n,m:longint;

    wb:array[1..20000] of 0..1;

    begin

    readln(n);

    for i:=1 to n do

    begin

    read(m);

    for j:=m downto 1 do

    if wb[j]=0 then

    begin

    wb[j]:=1;

    break;

    end;

    end;

    end.

  • 0
    @ 2009-11-02 15:04:52

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    想知道楼下k103701神牛(注意此牛,此人noi全国rank28,拿silver,去PKU)

    O(n)的算法是怎么算的

    不知道楼下哪个秃子说数组开到2048就可以,我一开始开到2500都WA2个

  • 0
    @ 2009-11-01 20:09:30

    var

    n,i,x,j :longint;

    f :array[0..2000]of longint;

    begin

    readln(n);

    for i:=1 to n do read(f[i]);

    f[0]:=0;

    for i:=1 to n do

    for j:=i-1 downto 0 do

    if f[i]-f[j]>=i-j then

    begin

    if i

  • 0
    @ 2009-10-31 07:55:27

    模拟,用一个stack配对

  • 0
    @ 2009-10-30 09:56:10

    用个数组记录第i位置男生的数量就行了

    数组开1500

    每次向左找一个女生配对,计算距离。

  • 0
    @ 2009-10-22 22:31:21

    样例是:(((()()())))

    "("=男生

    ")"=女生

    再你还不知道么?

  • 0
    @ 2009-09-27 20:18:51

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    部分和。从后往前计算。

    实现有点复杂,46行,但通用性更广。

  • 0
    @ 2009-09-26 09:48:29

    编译通过...

    ├ 测试数据 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-18 23:46:48

    水题一次AC 不过我的代码长了点

    var

    n,i,j,k,p,t:longint;

    a,b:packed array[0..1500]of longint;

    begin

    readln(n);

    for i:=1 to n do

    begin

    read(a[i]);

    b[i]:=a[i]-a;

    end;

    for i:=1 to n do

    begin

    p:=i;

    while b[p]=0 do dec(p);

    write(a[i]-a[p-1]-b[p]+1,' ');

    dec(b[p]);

    end;

    end.

  • 0
    @ 2009-09-12 19:09:17

    program p1062;

    var a:array[1..50000] of boolean;

    i,n:longint;

    j,k:qword;

    begin

    readln(n);

    fillchar(a,sizeof(a),false);

    for i:=1 to n do

    begin

    read(j);

    k:=j;

    while a[j] do dec(j);

    a[j]:=true;

    if in then write(k-j+1,' ')

    else writeln(k-j+1);

    end;

    end.

    原来。。

  • 0
    @ 2009-09-12 17:36:50

    一定记得开大数组 开到10000

    我交了四次......T_T

  • 0
    @ 2009-09-01 17:26:58

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    本人70题达成……

    水题,一个女生所配对的必定是离她最近的一个男生

  • 0
    @ 2009-08-25 13:43:42

    for i:=1 to n do

    begin

    read(x);

    j:=x;

    while a[j]=1 do j:=j-1;

    a[j]:=1;

    write(x-j+1);

    if in then write(' ');

    end;

    数组开小了

    ~~WA了一次

    水题,

    谢谢 ....刷水专用..

    不懂的看这个  ")"代表女生 "(" 代表男生

    注意这个条件:②任何一对舞伴之间,要么没有人,要么就有若干对舞伴。

    就是说"()"是成对的

    拿4 5 6666 为例,可知第一个')' 前面有四个'(' ,按照栈的规则,说明第一个')'与第四个'(' 匹配,同理第二个 ')' 与 第五个 '(' 匹配,第三个')' 与第六个 '(' 匹配,

    在看第四个,由于第六个'('、第五个'('、第四个'('、已经被匹配,所以第四个')' 应该是和

    第三个'(' 匹配,以此类推。。。。用一个数组保存的匹配的结果(match[]),

         4 5 6 6 6 6   6

    匹配结果:4 5 6 3 2 1 ,再以 3 为例,因为在这个')'之前的第四个'('、五个'('、第六个'('已经被匹配,每一次匹配是一个')', 加上本身 所以结果应该是 6-3+1,以此类推结果就出来了。。。 ^_^

  • 0
    @ 2009-08-23 09:59:54

    不知道要说什么

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    program ex;

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

    bo:array[1..10000]of boolean;

    ans:array[1..10000]of longint;

    begin

    readln(n);

    fillchar(bo,sizeof(bo),false);

    for i:=1 to n do

    begin

    read(x);

    for j:=x downto 1 do

    if not bo[j] then

    begin

    bo[j]:=true;

    inc(count);

    ans[count]:=x-j+1;

    break;

    end;

    end;

    for i:=1 to count-1 do write(ans[i],' ');

    writeln(ans[count]);

    end.

  • 0
    @ 2009-08-20 15:21:52

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    var

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

    i,n:longint;

    j,k:qword;

    begin

    fillchar(a,sizeof(a),false);

    readln(n);

    for i:=1 to n do

    begin

    read(j);

    k:=j;

    while a[j] do dec(j);

    a[j]:=true;

    if in then

    write(k-j+1,' ')

    else write(k-j+1);

    end;

    end.

    Flag    Accepted

    题号   P1062

    类型(?)   其它

    通过   1822人

    提交   4732次

    通过率   39%

    难度   1

    提交 讨论 题解

    水……

  • 0
    @ 2009-08-18 15:56:09

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    这种题目连我都一次A了!还有什么话说!

    一个字:水!

  • 0
    @ 2009-08-16 20:45:47

    readln(n);

    for i:=1 to n do

    begin

    read(s);

    k:=s;

    while (k>0)and(b[k]=1) do dec(k);

    b[k]:=1;

    write((s-k)+1,' ');

    end;

    end.

    超短。。。。。无限AC

  • 0
    @ 2009-08-15 17:55:08

    编译通过...

    ├ 测试数据 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-14 22:03:04
    • - 看了半小时没看懂...看题解都理解好久...我的语文...

信息

ID
1062
难度
4
分类
数据结构 | 点击显示
标签
递交数
3524
已通过
1406
通过率
40%
被复制
12
上传者