358 条题解

  • 0
    @ 2008-11-08 23:18:36

    pmq20

    #include

    #define maxR 500

    #define maxC 500

    //#define DEBUG

    long R,C,h[maxR+10][maxC+10],r_f[maxR+10][maxC+10],turn[5][2];

    long f(long x,long y)

    {

       long i,ret,tmp,x2,y2;

       if(r_f[x][y]) return r_f[x][y];

       ret=1;

       for(i=1;i=1 && x2=1 && y2

  • 0
    @ 2008-11-08 17:45:52

    0MS....

    除第一个9MS

    var a,f:array[1..500,1..500] of longint;

    b:array[1..250000,1..3] of longint;

    i,j,k,m,n,o,p,q:longint;

    qsort....

    init....

    begin

    sort(1,o);

    k:=0;

    for i:=1 to o do

    begin

    j:=0;

    p:=b;

    q:=b;

    if (p-1>0) and (a[p-1,q]j then j:=f[p-1,q];

    if (p+10) and (a[p,q-1]j then j:=f[p,q-1];

    if (q+1k then k:=j+1;

    end;

    writeln(k);

    end.

  • 0
    @ 2008-11-08 10:50:13

    program shuz;

    var

    q,b:array [0..501,0..501] of longint;

    x,y,i,j,max:longint;

    procedure work(l,r,m:longint);

    begin

    if q[l-1,r]

  • 0
    @ 2008-11-08 00:06:06

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

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

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

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

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

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

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

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

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

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

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

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

    原先打算用快排加dp,结果编成了记忆搜索。并且在第9点卡住了,检查良久后才发现自己编的是不完全记忆搜索。于是将其完善,AC了!!

    0秒,爽啊!

  • 0
    @ 2008-11-07 23:56:48

    这是小菜我所做的头一道记忆化搜索

    AC的感觉那叫一个舒爽啊

    唯一可惜的就是被第九个数据阴险了一把

    可恨我提交前还专门检查了N久(N

  • 0
    @ 2008-11-06 22:53:11

    编译通过...

    ├ 测试数据 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-06 10:46:35

    #include

    #define maxR 500

    #define maxC 500

    //#define DEBUG

    long R,C,h[maxR+10][maxC+10],r_f[maxR+10][maxC+10],turn[5][2];

    long f(long x,long y)

    {

    long i,ret,tmp,x2,y2;

    if(r_f[x][y]) return r_f[x][y];

    ret=1;

    for(i=1;i=1 && x2=1 && y2

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

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    注意第9组需用longint 与题中h

  • 0
    @ 2008-11-04 20:53:12

    编译通过...

    ├ 测试数据 01:运行时错误...| 错误号: 216 | 存取非法

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

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

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

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

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

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

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

    ├ 测试数据 09:运行时错误...| 错误号: 202 | 堆栈溢出错

    ├ 测试数据 10:运行超时...

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

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

    ??????????????????????

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

    {qsort+dp}

    program asdf;

    type rec=record

    x,y,dat:longint;

    end;

    var

    r,c,i,j,ans:longint;

    inf:array[0..250000]of rec;

    nea:array[1..250000,1..4]of longint;

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

    a:array[0..501,0..501]of longint;

    procedure sort(l,r:longint);

    var

    i,j,m:longint;

    begin

    i:=l;j:=r;

    m:=inf[(l+r)div 2].dat;

    while im do i:=i+1;

    while inf[j].dat

  • 0
    @ 2008-11-03 11:25:55

    记忆化搜索,或排序+DP

    program ski;{vijos 1011}

    var

    r,c,i,j,k,n,maxl:longint;

    h,f:array[0..501,0..501]of longint;

    function search(x,y:longint):longint;{from (x,y),the longest way}

    const

    xx:array[1..4]of integer=(-1,0,1,0);

    yy:array[1..4]of integer=(0,-1,0,1);

    var i,t,tmp,nx,ny,k:longint;

    begin

    if f[x,y]>0 then

    begin

    search:=f[x,y];

    exit;

    end;

    t:=1;

    for i:=1 to 4 do

    begin

    nx:=x+xx[i];

    ny:=y+yy[i];

    if (nx>0)and(nx0)and(nymaxl then maxl:=f;

    end;

    writeln(maxl);

    end.

  • 0
    @ 2008-11-02 20:05:47

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    先高度排序,按高度的递增顺序逐一DP

    f=max{f,f,f,f}+1.

  • 0
    @ 2008-11-02 00:30:05

    编译通过...

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

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

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

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

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

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

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

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

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

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

    为什么就我卡第10个点...

  • 0
    @ 2008-11-01 23:28:17

    所谓的记忆化,33行

  • 0
    @ 2008-11-01 19:42:14

    一开始想的是qsort+DP但太慢,后来才意识到可以记忆化DP!

    哎!还是太笨啊!感谢大牛们!

  • 0
    @ 2008-11-01 16:43:40

    咋做?大牛?

  • 0
    @ 2008-10-30 19:56:56

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    记忆化搜索

    for i:=1 to r do

    for j:=1 to c do

    begin

    tt:=get(i,j);

    if ans

  • 0
    @ 2008-10-29 23:13:11

    第9个点!

    竟然要longint。。

    害我wa了一次。

    而且报错也很神奇。

    你看的时候是

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

    ├ 标准行输出 402

    ├ 错误行输出 360

    再复制一下到别的地方就成了

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

     ├ 错误行输出

    神奇。。

    害我检查了20多分钟。。。

  • 0
    @ 2008-10-28 21:06:26

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    我把行和列打反了居然还有60分,原来滑雪场大多都是正方形..

  • 0
    @ 2008-10-28 08:00:04

    显然的,

    记忆化搜索,

    AC~

信息

ID
1011
难度
6
分类
动态规划 点击显示
标签
递交数
10335
已通过
2938
通过率
28%
被复制
23
上传者