首页
社区
课程
招聘
[原创]第2阶段第1题答案_by_windsun
2008-10-18 23:20 3099

[原创]第2阶段第1题答案_by_windsun

2008-10-18 23:20
3099
详细的程序设计文档请参见附件中的DOC文件。

程序编译和运行
程序文件名为answ2-1.c,用VC进行编译
cl /O2 answ2-1.c
运行程序answ2-1 (搜索100种拼法)
Search= 11295552,sucess= 101
详细结果保存在result.txt中。

程序的进一步说明
理论上,该程序可以得到所有可能的拼法,并且任何两个拼法之间是不一样的,但由于摆放方式组合725,594,112种,未能对摆放方式组合进行进一步的优化,减少摆放方式组合的数量(呵呵,时间有限,有点匆忙,应该可以找到更多的约束条件对程序进行进一步优化),实际测试中,在一台C3/512M的老机器上测试寻找100种拼法大概在13分钟,估计在P4M 1.7/2G的机器上不会大于10分钟。
没有在我的机器上测试寻找1000种拼法以及所有拼法所需要的时间,实在是机器跑不动,有空的话,麻烦评委给我测试一下,估计时间在1小时左右。
在程序的第一行,改变如下的宏定义,就可以改变最大可能搜索的拼法,当定义为0x7fffffff,则寻找所有的拼法。默认搜索1000种拼法。
//#define MAXSEARCH 100
#define MAXSEARCH 1000
//#define MAXSEARCH 0x7fffffff

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
点赞0
打赏
分享
最新回复 (3)
雪    币: 221
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
windsun 1 2008-10-23 22:21
2
0
发现有一个滑块的坐标写错了,100种拼法之后部分会有错,真郁闷
雪    币: 221
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
windsun 1 2008-11-13 22:26
3
0
唉,看来这个也没分了,不过可以输出100种算法
雪    币: 2134
活跃值: (14)
能力值: (RANK:170 )
在线值:
发帖
回帖
粉丝
Aker 4 2008-11-17 00:32
4
0
开始因为测试环境和运行时间遗漏了,呵呵:)

测试环境:
        请写明自己测试时的环境数据:
CPU / 内存 / ....
程序最终运行所需时间
程序最终跑出的结果文件。
--------------------------------------
在我P4M 1.7 cpu, 2G内存机器上跑了2.5个小时,跑了结果

puzzle总数:316
非重复puzzle数:314
映像puzzle数:1
有效puzzle数:313
结果提交时间 83 小时 19 分钟
结果提交时间长度 = 4999 分钟
结果提交次数 = 1
结果提交为100-1000
计算时间2.5小时,超过1小时
得分 = [(5760 - 4999)/5760]^1/10 x 0.7 x 100 - (1 -1 ) x 5 - 5 = 52.17
游客
登录 | 注册 方可回帖
返回