mathe
发表于 2008-10-5 20:33:41
如果程序中断,删除最后一个产生的文件,然后重新运行应该就可以了.
其实修改一下主程序应该更加好.
现在我又可以访问公司的机器了.我启动了N=12的程序,看看需要运行多长时间.
我估计明天应该能够出结果.
mathe
发表于 2008-10-5 20:34:10
N=10以前的结果同前面完全一致.:lol
无心人
发表于 2008-10-5 20:46:39
我在家刚启动了11的
无心人
发表于 2008-10-5 20:48:24
那要修改程序
用个log文件
保存生成的文件名
PS
初次运行10的速度并不象你说的那么快
怀疑我机器不如你本本好
呵呵
中断了11的运行
还是去学校服务器做吧
[ 本帖最后由 无心人 于 2008-10-5 20:59 编辑 ]
无心人
发表于 2008-10-5 20:56:14
不过mathe你混合C语言和C++语言的库倒是挺熟练的啊
哈哈
怎么不用标准IO库啊
我总觉得用C就不用C++语法
用C++就不用C的东西
呵呵
mathe
发表于 2008-10-6 06:51:01
运行n=11出现前10个结果要比直接运行n=10慢很多的.
我现在N=12的程序11以前个数据出来了:
r=10
r=29
r=76
r=284
r=1413
r=7187
r=38103
r=231051
r=1765186
mathe
发表于 2008-10-6 06:53:39
原帖由 无心人 于 2008-10-5 20:56 发表 http://bbs.emath.ac.cn/images/common/back.gif
不过mathe你混合C语言和C++语言的库倒是挺熟练的啊
哈哈
怎么不用标准IO库啊
我总觉得用C就不用C++语法
用C++就不用C的东西
呵呵
我不习惯用<iostream>. 其实C++里可以使用的就是C++代码,为什么一定要认为是C代码呢?
无心人
发表于 2008-10-6 08:18:05
:)
11解出来的速度比较快的
可能算法复杂度降低了
===============
IO库比较方便的
无心人
发表于 2008-10-6 10:29:48
我这里11的也出结果了
启动程序8:08
看文件大概10:09结束的
mathe
发表于 2008-10-6 10:54:50
我的程序在昨晚20:30开始运行(看第一个产生文件的时间),而今天早上5:01分才产生11的结果.
不过我估计总运行时间应该在1到2天之间(我估计每增加一个数字,运行时间增加应该在8~16倍之间)
不过现在程序在内存使用方面倒有些问题,基本保持在1.2G~1.3G之间.可能由于内存访问效率问题速度还要降低一些.这个同现在程序使用递归调用有一定关系,主要是程序修改自前面链接中Java代码,连递归调用都复制过来了.实际上我们可以不需要递归调用,可以按文件名数字顺序依次产生所有文件,内存使用应该会有效一些.
现在程序已经产生了3888个文件,总共将需要产生4017个文件.