主题:已知n个数的n*n(n-1)个两两相加和,求这n个数,有什么好的算法
shuiqingyangliu
[专家分:0] 发布于 2007-01-08 18:15:00
可以先假设2<=N<10
回复列表 (共6个回复)
沙发
雪光风剑 [专家分:27190] 发布于 2007-01-08 18:46:00
到底已知是什么?n^2还是(n^2)*(n-1)?
板凳
shuiqingyangliu [专家分:0] 发布于 2007-01-08 22:09:00
写错了,已知n个数的n*(n-1)/2个两两相加和,求这n个数
3 楼
argentmoon [专家分:13260] 发布于 2007-01-08 22:41:00
x1 + x2 = y12
x1 + x3 = y13
x2 + x3 = y23
三个未知数,三个方程,可以解出x1, x2, x3
然后把x1, x2, x3代入矩阵中运算,依次解出各个未知数继续迭代下去,解出所有解即可。
4 楼
雪光风剑 [专家分:27190] 发布于 2007-01-09 09:08:00
如果已知n不很大的话可以尝试对从1到n的所有整数分别求和
因为n*(n-1)/2就是从1加到n的和……
5 楼
DFDer [专家分:70] 发布于 2007-01-09 20:53:00
通俗的讲,就是 设a,b,c为已知的前三小(a<=b<=c),再设A,B,C为需要求出的前三小(A<=B<=C),则有A+B=a,A+C=b,B+C=c,解出即可。剩下的数可用这个方法继续求。
我来回复