回 帖 发 新 帖 刷新版面

主题:第51次编程比赛 第一轮评测结果

这是第一轮的测试结果。主要是筛选出较优的程序进行第二轮评测。
[color=FF0000]特别声明,最后排名.xls里的排名只是第一轮的排名,并不是最终的排名。[/color]
最终排名预计会在明天出来。

因为文件较大请从[url=http://upload.programfan.com/upfile/200703300707658.rar]这里[/url]下载。

有何异议请跟贴说明。

回复列表 (共47个回复)

沙发

sf
^v^

板凳

orz
楼主辛苦了!

第五组测试数据是降序的,一堆人超时了,呵呵
前12个算法应该都差不多

3 楼

啊~~原来这题还真不简单哪``
  楼主辛苦咯```

4 楼

楼主辛苦了!请问你用的是哪个测评系统?
我原来下载一个cena,竟然不会用,有哪位朋友用过cena的,请告知一下方法,谢谢!

5 楼


这次评得好详细哇     楼主细心哇   辛苦了...

6 楼

hehe
~~~renew
真的是相当负责啊~~~干事业的人啊~~下期你继续吧~~哈哈玩笑

这次比赛真的8错哦~~
可惜偶的代码都身高都定义成~INT了~~~有一半没通过
哈哈,下次再来~

7 楼

[quote]hehe
~~~renew
真的是相当负责啊~~~干事业的人啊~~下期你继续吧~~哈哈玩笑

这次比赛真的8错哦~~
可惜偶的代码都身高都定义成~INT了~~~有一半没通过
哈哈,下次再来~
[/quote]
这个没有关系的,数据类型不符合的在测试的时候已经帮你改过了,int会改成long,不符合规范输入输出的会看情况替你修改的

8 楼

再次对楼主的专业和细心表示钦佩!赞一个!

9 楼

感谢楼主~~  lol~

10 楼

综合大家的成果改进了一下,应该是最快得了^^

long CountShort(long n, long *height)
{
    long cnt[50001]={0}, i, j;
    long sum = 0;
    //cnt[i]储存i与右边不矮于他的第一个j的序号差(j-i)
    for(cnt[n-1] = 1, i = n-2; i >= 0; i--)
    {
        for(j = i+1; j < n && height[i] > height[j]; j += cnt[j]);
        cnt[i] = j-i;
        sum += cnt[i]-1;
    }
    return sum;
}

我来回复

您尚未登录,请登录后再回复。点此登录或注册