[问题] PA2测资的范围

楼主: anfranion (南‧生命的意義是經歷)   2012-03-24 18:59:35
助教好~
我想问一下PA2
N, S, Si, Vi测资分别的上下限是多少呢?
// 怕会加到integer overflow :P
先谢谢助教了~
作者: wintercobra (wintercobra)   2012-03-24 22:58:00
借这篇问一个:我用Dynamic programming跑测资时,跑到n1000S10000还可以,但是到n10000S100000就爆了,建出纪录表时,因为dimension是10000x100000,在malloc()时挂点(segmentation fault)。我看了一下发现是死在10000x80000左右,不确定是不是内存满了之类的,想知道是不是上限太大的缘故,谢谢。
楼主: anfranion (南‧生命的意義是經歷)   2012-03-24 23:15:00
应该是吧~我猜可能不能开连续的 (就是DP[10000][10000]这种开法...可能要dp = new int*[N] 然后 dp[i] = newdp[i] = new int[S] 之类的~不过好的做法应该是内存只用一维~(上面那句话好像有问题...请先忽略XD)
作者: wintercobra (wintercobra)   2012-03-25 13:44:00
喔,我是new出来的没错,不是static,还是挂
楼主: anfranion (南‧生命的意義是經歷)   2012-03-25 13:58:00
我这样new可以喔,是不是有access到超过的范围呢?或者是你不是在工作站上跑 是在自己的电脑?自己的电脑的话内存可能不会可以开这么大
作者: wintercobra (wintercobra)   2012-03-25 18:04:00
是自己电脑没错...
楼主: anfranion (南‧生命的意義是經歷)   2012-03-25 19:29:00
因为那个case大概会需要7G~8G的内存一般的电脑不可能开得起来XDrz
作者: wintercobra (wintercobra)   2012-03-26 00:52:00
是的!!!!!这样我就安心了XD
楼主: anfranion (南‧生命的意義是經歷)   2012-03-26 21:34:00
记得丢到工作站试试喔XD
作者: Usoul   2012-03-27 23:01:00
测资不会刁难大家,范围大概就跟题目附的测资差不多不过大家还是可以想办法将可扩展性增加。因为我应该会丢一组稍微难一点的来增加辨别度...
作者: victoret (戏言~)   2012-04-01 00:21:00
原来不能是 static 啊!感谢!!!用 static n1000S10000 就爆了 @@
作者: photonzero (邪心魔佛)   2012-04-01 14:14:00
楼上我是用new,可在工作站上输出档案但仍有内存错误

Links booklink

Contact Us: admin [ a t ] ucptt.com