[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
这个也很NB啊,版主把初始阵列还原一下贴出来就好了。  :-)

TOP

回复 31楼 的帖子

是同一个的不同尺寸嘛,你等着

我去啊,我弄了很久,他这个图有交错,跟图对比,害我自己搞对了又搞乱了#@!%……

[ 本帖最后由 523066680 于 2011-2-19 19:06 编辑 ]

TOP

初始场面,反正是构成循环的
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓■▓▓▓▓■▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓■■▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓■▓▓▓▓▓■■▓▓▓■▓▓▓▓▓▓▓▓■■▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■■▓■▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓■■▓▓▓▓▓
▓■■▓▓▓▓▓▓▓▓▓▓▓▓■■▓■■▓▓▓▓▓▓■▓▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓■■▓▓▓▓▓▓▓▓▓▓▓▓■■▓■▓▓▓▓▓▓▓▓■▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓

TOP

我做了上面的怎么后来是这样的循环
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓■▓▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓■■■▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓■▓▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓■■■▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓

▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓■▓▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓■▓▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓

TOP

回复 34楼 的帖子

我是先抓出了关键部分,也就是能左右跑动,还碰撞产生一个小东西的。
============================================
刚刚再试了一下,要吐血了,模仿图片弄了那么久,结果还只是生成那个小东西=。=
没一会儿就打散了

[ 本帖最后由 523066680 于 2011-2-20 15:03 编辑 ]

TOP

为积分  再优化 提升点效率

TOP

忘记设权限了。。
先删掉

[ 本帖最后由 caruko 于 2011-2-22 22:22 编辑 ]

TOP

只用了set for echo 3个命令,效率应该还可以=。=,如果不echo,直接得到第100代就更快一点了。我这里大概2分多钟算出来。
原来不用代码,等下直接贴结果。

第100代
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓■▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓■▓■▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓■■▓▓▓▓▓■▓■▓▓▓▓■■▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓■■▓▓▓▓■■▓■▓▓▓▓▓
▓▓▓▓▓▓▓▓■■▓▓▓▓■■▓▓■■▓▓▓▓▓
▓▓▓▓▓▓▓■▓■▓▓▓■▓▓■▓■■■▓▓▓▓
▓▓▓▓▓▓■■▓▓■■■▓▓▓■▓▓■■▓▓▓▓
▓▓▓▓▓▓▓▓▓▓■■■▓■▓■▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓■▓▓▓▓■▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓■▓■▓▓■▓▓▓▓▓▓▓▓▓▓
▓▓■■▓▓▓▓▓▓■■▓■■▓▓▓▓▓▓▓▓▓▓
▓▓■■▓▓▓▓▓▓▓■▓▓■▓▓▓▓▓▓▓▓▓▓
▓▓■▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓
▓■▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓
■▓■■▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓■■▓▓▓▓▓■▓▓■▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓■■■▓■▓■■▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓■▓▓■■■■▓▓■▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓■▓■▓▓▓■▓▓■▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓■▓▓▓▓■▓■▓▓▓▓▓▓▓▓▓▓▓


[ 本帖最后由 caruko 于 2011-2-22 23:05 编辑 ]

TOP

代码先上传吧 =。=
到时不知道还记得不,也可能没时间来。
已经更新过,按边角对接算的。

这个代码算法太慢了,已经另写了效率高很多的代码,这个就不设权限了,有意的可以看看。

TOP

=。= 已经按照边角对接修改过了..
输出速度大约是一副图2秒。
不输出的计算速度大约是1.5秒一代。
我的电脑是用了5年的本本,CPU P4M 1.7G的。

效率貌似难以提升了,所有IF判断后再赋值,都是用set /a直接得到结果,效率应该还可以才是。

如果计算中不需要输出,核心循环代码包括FOR(100)的括号在内,可以简化到4行。

[ 本帖最后由 caruko 于 2011-2-23 00:21 编辑 ]

TOP

回复 40楼 的帖子

hia hia 那就跟整体机制有关。 继续膜拜某的 带刷屏到100代  20秒 。
也就是0.2一张,我内牛满面……

TOP

=.= 我的电脑纯输出2500行就得20秒啊,等会换个电脑试试。
这破机器开龙之谷,每次加载要5分钟,而别的电脑只要15秒。

还有边角问题,是只有4个顶点相连?还是上下边,左右边相连?

难道批处理的纯数值计算更慢?? 回头再想想有没别的办法,减少循环。
这是新的运行结果。

10:46:41.35
10:48:08.14
第100代
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■▓
▓▓▓▓▓▓■▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓■
▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓■■▓▓▓▓▓
■■▓▓▓▓▓▓■▓▓▓▓▓▓▓▓■▓▓■▓▓■■
■■■▓▓▓■▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓■
▓■▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓■■■▓▓▓▓
▓▓■■▓▓▓▓▓▓■▓▓▓■▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓■▓▓▓▓■▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓■▓▓■▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓■▓■▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓■▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓■■▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓


[ 本帖最后由 caruko 于 2011-2-23 10:52 编辑 ]

TOP

运行速度和机器配置有关 我的 酷睿2 4400 @ 2.00GHz   2 GB DDR2 667MHz  sp3  现在运行 17秒
我相信 继续优化后 速度还可以提升的

TOP

稍微参与下,呵呵, 我贴下我的关键算法, 很菜, 转成批处理速度应该很慢吧
  1. for (i = 0; i < N; ++i)
  2. for (j = 0; j < N; ++j) {
  3. sum = list[(i+1+N)%N][(j+N)%N] + list[(i-1+N)%N][(j+N)%N] + list[(i+N)%N][(j+1+N)%N] + list[(i+N)%N][(j-1+N)%N];
  4. sum += list[(i+1+N)%N][(j+1+N)%N] + list[(i+1+N)%N][(j-1+N)%N] + list[(i-1+N)%N][(j-1+N)%N] + list[(i-1+N)%N][(j+1+N)%N];
  5. switch (sum) {
  6. case 2://不变
  7. backUp[i][j] = list[i][j]; break;
  8. case 3://生
  9. backUp[i][j] = 1; break;
  10. default://死
  11. backUp[i][j] = 0; break;
  12. }
  13. }
  14. for (i = 0; i < N; ++i)
  15. for (j = 0; j < N; ++j)
  16. list[i][j] = backUp[i][j];
复制代码

TOP

猜想,17秒*25,扣除输出时间,大约是我的运行时间,terse 可能一次计算只循环了25次。。
也就是一行一行的处理?
我也想想,有没可能做到。

[ 本帖最后由 caruko 于 2011-2-23 15:53 编辑 ]

TOP

返回列表