作者Natsutaka (夏宇)
看板b98902HW
标题[计程] TestGirl第7题
时间Sun Oct 11 18:32:31 2009
2007 Hw 3-1 ( score: 6 )
题目如下:
http://ppt.cc/ehEQ
我的code如下:
http://ppt.cc/UxYO
上传後显示:
第 6 次试验:你的程式当掉了!>"< 原因:使用到不该用的记忆体
没有通过试验。:(
所以只得5分
怎麽看都觉得程式没有问题
到底问题在哪里呢?
--
另外
因为我是外系跑来修的
班上没有认识半个人
所以在计程的学习路上
觉得有点孤独
所以想问看看:
有没有人有兴趣一起消TestGirl的题目呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.217.60
1F:推 anfranion:这样子的存法一定会超过的噢~ 因为测资笔数可以很多 10/11 19:29
2F:→ anfranion:改成以组为单位试试吧:) 10/11 19:30
3F:→ Natsutaka:不了解 "以组为单位" 的意思 10/11 20:00
4F:→ Natsutaka:啊 我想我大概了解了 10/11 20:33
5F:推 sa072686:也就是说,每一组测资是独立的,所以你没有必要保留 10/11 20:33
6F:→ Natsutaka:我再试试看 有问题再上来问喔 10/11 20:33
7F:→ sa072686:在第n组时并不会用到第n-1组或更之前的资料 10/11 20:33
8F:推 cwahbong:楼上强者出现!! 10/11 20:33
9F:推 sa072686:楼上强者出现!! 10/11 20:38
10F:推 cwahbong:楼上超强者出现!! 10/11 20:40
我原本的写法是:
先收集每一组测资
再一次把所有测资的change[i]算出来
这样会用掉大量memory
我已经改写成:
每收集一组测资 就把它的change[i]算出并且存起来
新的code如下:
http://ppt.cc/n,cw
可是上传以後还是错了 这次讯息是:
第 6 次试验:你的程式当掉了!>"< 原因:执行时间或记忆体用量超过限制
没有通过试验。:(
一样5分
※ 编辑: Natsutaka 来自: 140.112.217.60 (10/11 21:10)
11F:推 anfranion:change那边还可以更好噢 再想想吧!! 10/11 21:29
12F:→ Natsutaka:我在想这次应该是执行时间的问题,不可能是memory的问题 10/11 21:49
13F:→ Natsutaka:因为这次我使用的memory不到8KB 10/11 21:50
14F:→ Natsutaka:再请教楼上上上 是哪方面的更好呢? 10/11 22:55
15F:推 robertabcd:不一定要最後才输出 10/11 23:30
我已将程式改写成:
每收集一组测资 就把它的change(这次没有[i]了)算出并且立即输出
新的code如下:
http://ppt.cc/YgCV
讯息仍旧:
第 6 次试验:你的程式当掉了!>"< 原因:执行时间或记忆体用量超过限制
没有通过试验。:(
一样5分
※ 编辑: Natsutaka 来自: 140.112.217.60 (10/12 00:41)
16F:→ zenixls2:想想看有没有做哪些无谓的比较 10/12 02:00
17F:→ zenixls2:这题要用某种sort才不会TLE... 10/12 02:02
18F:→ Natsutaka:所以是不是不能用bubble sort呢? 10/12 22:37
成功 这次6分
使用 bubble sort 是可以的
不过我去维基百科查了一下 bubble sort
发现了我的code的瑕疵
我原本的写法是:
不论 seq[] 是不是已经 completely sorted
都一律 repeat N+1 次
这次我加上一个变数 sorted
sorted = 0 代表还没做完
sorted = 1 代表 seq[] 已经 completed sorted, 要立即中止回圈
这样可以减少计算量 也就是执行时间
新的code如下 分享给大家 感谢大家辛劳:
http://ppt.cc/3AkX
※ 编辑: Natsutaka 来自: 140.112.217.60 (10/12 23:00)
※ 编辑: Natsutaka 来自: 140.112.217.60 (10/12 23:04)
19F:→ Natsutaka:好有成就感 呼~~ 10/12 23:13