mathe
发表于 2008-5-4 12:00:02
全部列出来我觉得不大可能,复杂度太高了。你先说说,你觉得有什么好一些的算法?
gxqcn
发表于 2008-5-4 12:06:28
我用的是纯数学方法,就是担心会出现遗漏,所以想检验一下。
mathe
发表于 2008-5-4 12:22:07
能介绍一下使用的方法吗?怎么去保证全部罗列呢?
gxqcn
发表于 2008-5-4 12:39:52
这个,我也并没有想好。;P
且 160^5 = 104857600000 > 2^32,数据结构上也存在问题,在32位平台下且追求效率。
这样吧,把问题降一阶,改成:
请将前 80 个正整数 4 次方代数和为零的情形全部罗列出来。
但不知道数目会不会很大。
mathe
发表于 2008-5-4 12:57:18
原帖由 gxqcn 于 2008-5-4 12:39 发表 http://bbs.emath.ac.cn/static/image/common/back.gif
这个,我也并没有想好。;P
且 160^5 = 104857600000 > 2^32,数据结构上也存在问题,在32位平台下且追求效率。
这样吧,把问题降一阶,改成:
请将前 80 个正整数 4 次方代数和为零的情形全部罗列出来 ...
我可以先给出计数,这个应该不是问题。如果数目很大,就没有必要全部罗列出来了
gxqcn
发表于 2008-5-4 13:11:57
好的,先谢谢了!
无心人
发表于 2008-5-4 14:18:42
:)
如果是野蛮搜索,是$2^80$
如果是分块搜索,假设16个一组,一组$2^16$个可能
共$5*2^16$个结果,不知道有办法从里面得到线性方程的解
mathe
发表于 2008-5-4 15:27:53
程序计数结果是有368856192种组合结果为0。(花费2分半时间)
如果程序没有写错,那就是结果太多了。
============
结果算错了,更新一下,新结果为:8303139055857536
[ 本帖最后由 mathe 于 2008-5-5 10:57 编辑 ]
gxqcn
发表于 2008-5-4 15:43:38
谢谢!如果加上限制条件:正负符号各取半呢?
(对不起,我在公司,无法下载论坛附件)
mathe
发表于 2008-5-4 15:55:57
这个现在的这个程序好像还不行。空间复杂度有点问题。
页:
1
2
3
4
5
[6]
7
8
9
10
11
12
13