题解

85 条题解

  • 0
    @ 2008-10-16 20:10:46

    ~HOHO~简DP~一次AC~

    O(N^2)

  • 0
    @ 2008-10-16 07:56:51

    编译通过...

    ├ 测试数据 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-10-15 20:04:36

    没想到,直接在框框里编也过了?!

  • 0
    @ 2008-09-29 17:05:50

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    本尝试2维表示,结果不对

    还是应该一维表示,其他的作为判定条件

  • 0
    @ 2008-09-27 22:46:37

    /*

    DIST [i] 表示1到i H和J相差几个, 则 j到i相差几个等于 abs (DIST [j-1] - DIST [i])

    状态: F [i] 表示1到i最少要几辆巴士

    转移: F [i] = min{F [j]|0

  • 0
    @ 2008-09-25 21:53:05

    这个题开始写恶心了,居然超时了...

  • 0
    @ 2008-09-23 15:33:44

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    60ACs纪念,秒杀,一次过,O(∩_∩)O哈哈~。。。

  • 0
    @ 2008-09-22 23:35:39

    g[i]表示从1到i的H与J相差的人数,注意:g[i]>=0;

    设f[i]为前i个支持者需要坐的最少车数:f[i]=min{f[j]}+1;(0

  • 0
    @ 2008-09-22 15:36:45

    纪念一下第190题竟然是水题

    像Matrix67大牛出的那题的数据处理方式

    for i:=1 to n do

    p:=maxlongint;

    for j:=0 to i-1 do

    if (abs(a[i]-a[j])f[j] then begin p:=f[j]; if p=0 then break; end;

    f[i]:=p+1;

  • 0
    @ 2008-09-15 23:16:16

    不要对任何水题大意!我一开始连样例都没试直接提交,结果wa了。后来用fp一运行发现数组没开0,囧!

  • 0
    @ 2008-09-04 09:55:01

    可以设g[i]表示从1到i的H与J相差的人数,则从i到j的H与J相差的人数是abs(g[i]-g[j])。当abs(g[i]-g[j])=i-j时,i到j仅有一个队伍的支持者。

    设f[i]为前i个支持者需要坐的最少车数,则有f[i]=min{f[j]}+1;(0

  • 0
    @ 2008-09-08 20:43:27

    终于AC了··

    呵呵爽啊!

    boyzkk

    编译通过...

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

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    f[i]表示前i个人需要的最少车辆

  • 0
    @ 2008-08-22 14:25:48

    for i:=1 to n do

    begin

    b[i]:=b+1;

    for j:=1 to i-1 do

    if ((abs(a[i]-a[j-1])b[j-1]+1){同队} then

    b[i]:=b[j-1]+1;

    end;

    其中'J'=>a[i]=1 'H'=>a[i]=-1;

    再统计:a[i]:=a[i]+a

  • 0
    @ 2008-08-18 10:57:41

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    痛苦的折磨`在别人指导下终于ac了\
    兄弟\` 下回记住\`\` 条件啊\
    `

    f[i]:=2500;

  • 0
    @ 2008-08-16 15:07:16

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    F=min{f[j]+1,f[i]}

    f[i]表示到队伍第i个人要的最少巴士数目。

    (其中当a[j+1]..a[i]可以一个巴士装下,才可判断f[i]与f[j-1]+1大小)

  • 0
    @ 2008-08-08 15:19:34

    2500的数据,O(n^2)不超时。。。我开始没发现,妄想O(n)。。。。。

  • 0
    @ 2008-08-02 12:25:42

    1次ac..

    R713158 Accepted 100

  • 0
    @ 2007-11-13 16:45:58

    郁闷,看来偶果然还是比较弱啊.具体方法请参考下面的题解.

  • 0
    @ 2007-11-08 22:19:20

    和《过河》(p1002)类似的

信息

ID
1331
难度
5
分类
动态规划 点击显示
标签
(无)
递交数
1314
已通过
483
通过率
37%
被复制
4
上传者