计算N=5,D=8时的结果。算出来的同学发奖品。一件开源社区的T-shirt。
在N×N的矩阵中填入正整数,使得每一行每一列分别相加都得D。数字可以重复。计算一共有多少个这样的不同矩阵。不用输出所有矩阵,只要有多少种就
行。
计算N=5,D=8时的结果。算出来的同学发奖品。一件开源社区的T-shirt。
On 11月26日, 下午4时17分, 张龙攀 <zhanglong...@gmail.com> wrote:
> 我的结果也是153040
> 2009/11/26 Nemo <nemo1...@gmail.com>
>
> > 我算法太烂,写了个计算时间都超过一分钟了- -!
> > 而且结果让我很怀疑:153040
>
> > 2009/11/26 吕宗庭 <lvzongt...@gmail.com>
>
> > 在N×N的矩阵中填入正整数,使得每一行每一列分别相加都得D。数字可以重复。计算一共有多少个这样的不同矩阵。不用输出所有矩阵,只要有多少种就
> >> 行。
>
> >> 计算N=5,D=8时的结果。算出来的同学发奖品。一件开源社区的T-shirt。
>
> > --
>
> > 人生好比在树林中走路,有无数的岔路口,任你选择,但你永远只能选择其中一个。沿着你选择的岔路口走下去,你又会遇到无数的岔路口。当你做出了无数的选择--正确的或错误的,走到路的尽头,回头再看,所有的岔路口都不见了,你会发现,其实你只走了一条路--那就是你来时的路,那就是你唯一的命运。
On 11月26日, 下午5时24分, 张龙攀 <zhanglong...@gmail.com> wrote:
> 我的那个更慢啊,盲目的枚举[?][?][?] 脚本写起来就是简洁啊
>
> 331.gif
> < 1K查看下载
On 11月26日, 下午6时15分, Nemo <nemo1...@gmail.com> wrote:
> 因为数字可以重复,所以翻转矩阵是不是就是矩阵翻转90度后又是一个新的矩阵,如果是的话这样能效率很多
>
> 2009/11/26 吕宗庭 <lvzongt...@gmail.com>
>
> > 用状态转移写的 回逆,但是 还有更牛的 在 1ms内算出来的 我在想他怎么做的 他跟我说 用的是 翻转矩阵的方法 我还没搞明白 郁闷呀 比不过
> > 人家了。人家 就没有 浪费的 直接 生成 字典序的 结果 。
>
> > On 11月26日, 下午5时24分, 张龙攀 <zhanglong...@gmail.com> wrote:
> > > 我的那个更慢啊,盲目的枚举[?][?][?] 脚本写起来就是简洁啊
>
> > > 331.gif
> > > < 1K查看下载
>
> --
On 11月26日, 下午5时22分, Nemo <nemo1...@gmail.com> wrote:
> 我们宿舍的我和他说了他尝试用回溯法解决,我想应该更效率些,吕大给出你的想法?
>
> 2009/11/26 Nemo <nemo1...@gmail.com>
> > 2009/11/26 吕宗庭 <lvzongt...@gmail.com>
> > 人生好比在树林中走路,有无数的岔路口,任你选择,但你永远只能选择其中一个。沿着你选择的岔路口走下去,你又会遇到无数的岔路口。当你做出了无数的选择--正确的或错误的,走到路的尽头,回头再看,所有的岔路口都不见了,你会发现,其实你只走了一条路--那就是你来时的路,那就是你唯一的命运。
>
> --
> AlexSun...@yahoo.com.cn
> 2009-11-26
On 11月26日, 下午8时44分, ggarlic <yangbo.ggar...@gmail.com> wrote:
> 你还是叫幻方问题的好~~
>
> 2009/11/26 吕宗庭 <lvzongt...@gmail.com>
给定正整数N和D,生成所有行和、列和等于D的NxN的非负整数矩阵。给出 N <= 5, D <= 8 的所有计数值。
我找到邮件了。对不起大家。
答案:
N=5 D=4 结果:2224955 耗时109ms
N=5 D=5 结果:22069251 耗时1140ms
N=5 D=6 结果:164176640 耗时6531ms
N=5 D=7 结果:976395820 耗时34344ms
N=5 D=8 结果:4855258305 耗时172109ms
D D D D D D D D
1 2 3 4 5 6 7 8
N 1 1 1 1 1 1 1 1 1
N 2 2 3 4 5 6 7 8 9
N 3 6 21 55 120 231 406 666 1035
N 4 24 282 2008 10147 40176 132724 381424 981541
N 5 120 6210 153040
是要算零的。大家再改一下程序吧。我对不起大家。
On 11月26日, 下午11时03分, 汪彧之 <justin.w...@gmail.com> wrote:
> 我只能想到生成全排列判重......
>
> 矩阵旋转是个好方法,包括翻转、换行、换列
> 2009/11/26 吕宗庭 <lvzongt...@gmail.com>
在 09-11-27,吕宗庭<lvzon...@gmail.com> 写道:
On 11月28日, 上午1时19分, MAT WETU <matw...@gmail.com> wrote:
> 先一维再二维...c实现...耗时居然是答案的三倍!校内那篇看不懂。。期待揭晓,希望到时看懂。。
>
> 在 09-11-27,吕宗庭<lvzongt...@gmail.com> 写道:
On 11月28日, 上午1时19分, MAT WETU <matw...@gmail.com> wrote:
> 先一维再二维...c实现...耗时居然是答案的三倍!校内那篇看不懂。。期待揭晓,希望到时看懂。。
>
> 在 09-11-27,吕宗庭<lvzongt...@gmail.com> 写道:
/*有些习惯不大好。。可读性可能有点低。。
我用的编译器的int是4位的,N=5,D=8时会超出范围,这个没作处理*/
在 09-11-28,吕宗庭<lvzon...@gmail.com> 写道:
On 11月28日, 下午9时48分, 张龙攀 <zhanglong...@gmail.com> wrote:
> 那人不是ACM基地的[?][?][?]
>
> 331.gif
> < 1K查看下载
在 09-11-28,吕宗庭<lvzon...@gmail.com> 写道:
>
On 11月29日, 上午12时10分, MAT WETU <matw...@gmail.com> wrote:
> 我不是啊...我才大一...刚才你讲的矩阵那个,没学过,完全不懂
>
> 在 09-11-28,吕宗庭<lvzongt...@gmail.com> 写道:
On Nov 29, 3:07 pm, 张龙攀 <zhanglong...@gmail.com> wrote:
> 坐第一排的那个人不是ACM基地的...... 吕大讲得很好 ,很强大
> ACM基地 的QQ群号68894580
在 09-11-28,吕宗庭<lvzon...@gmail.com> 写道:
On 12月8日, 上午10时26分, MAT WETU <matw...@gmail.com> wrote:
> 是时候了...
>
> 在 09-11-28,吕宗庭<lvzongt...@gmail.com> 写道:
> ...
>
> 阅读更多 >>
On 12月8日, 下午3时42分, MAT WETU <matw...@gmail.com> wrote:
> 辛苦了 吕大!
> 。。这样大的数组 足以秒杀 内存。。周四 拿 学校 机子 试试。。
>
> 在 09-12-8,吕宗庭<lvzongt...@gmail.com> 写道:
> ...
>
> 阅读更多 >>