xhq123 发表于 2012-10-1 20:56:57

由方差如何推导数字序列的特征

已知的5个整数,其总体方差为2。
是否可推导出5个整数是连续整数。如3、2、1、4、5
如是,如何证明。
如不是,请举反例。
第一次发贴,多多指教。

sunwukong 发表于 2012-10-2 19:55:13

如果5个整数不能相同,则结论成立:5个整数是连续整数

如果可以相同,则不成立,反例:   000   1   3


假设 5 个整数 $s_1$、$s_2$、$s_3$、$s_4$、$s_5$ 的算术平均数为 $bar s$ ,设

$t_1=s_5-bar s$
$t_2=s_5-bar s$
$t_3=s_5-bar s$
$t_4=s_5-bar s$
$t_5=s_5-bar s$

则 $t_1$、$t_2$、$t_3$、$t_4$、$t_5$ 的方差与 $s_1$、$s_2$、$s_3$、$s_4$、$s_5$ 相同,且
$t_1$、$t_2$、$t_3$、$t_4$、$t_5$ 的平均数为0

由方差为2,得

$(t_1^2+t_2^2+t_3^2+t_4^2+t_5^2)/5=2$

所以

$t_1^2+t_2^2+t_3^2+t_4^2+t_5^2=10$

由此,得

$t_i^2<=10$

所以 $t_i$ 只可能是 -3,-2,-1,0,1,2,3

如果有某个 $t_i^2$ 为 9,则余下的四个数的平方和只能为 1,所以余下的四个数只能是 0、0、0、$+-1$。

所以,$t_i^2$ 不能为 9

由此得 $t_i$ 的取值为: -2、-1、0、1、2

xhq123 发表于 2012-10-2 21:17:50

谢谢楼上。但0,0,0,1,3的总体方差不为2呀。

xhq123 发表于 2012-10-3 09:24:55

谢谢悟空,OK了。

xhq123 发表于 2012-10-3 10:08:49

不过反例不适用,我没有找到反例。

xhq123 发表于 2012-10-5 19:06:43

2# sunwukong


论证还是有问题。Ti不一定是整数。

xhq123 发表于 2012-10-5 19:07:28

继续求严密论证。

sunwukong 发表于 2012-10-8 09:08:35

考虑不周,2楼的证明是错的。
更正如下

假设 5 个整数 $s_1$、$s_2$、$s_3$、$s_4$、$s_5$ 的算术平均数为$bar s$,设

$t_1=5(s_1-bar s)$
$t_2=5(s_2-bar s)$
$t_3=5(s_3-bar s)$
$t_4=5(s_4-bar s)$
$t_5=5(s_5-bar s)$

则 $t_1$、$t_2$、$t_3$、$t_4$、$t_5$ 这5个数是整数,方差是 $s_1$、$s_2$、$s_3$、$s_4$、$s_5$ 的方差的 $5^2$ 倍,且平均数为 0,

由$s_1$、$s_2$、$s_3$、$s_4$、$s_5$的方差为2,得

$(t_1^2+t_2^2+t_3^2+t_4^2+t_5^2)/5=2*5^2$

所以

$t_1^2+t_2^2+t_3^2+t_4^2+t_5^2=250$

问题转化为:

5个整数 $t_1$、$t_2$、$t_3$、$t_4$、$t_5$ 满足:

$t_1+t_2+t_3+t_4+t_5=0$
$t_1^2+t_2^2+t_3^2+t_4^2+t_5^2=250$

求所有的解

wayne 发表于 2012-10-8 09:55:32

这5个数是连续整数.
==================
由于平均数对总体方差不产生影响,我们不妨直接假定平均数为0,于是 5个数平方和就是10了.
5个整数 $t_1$、$t_2$、$t_3$、$t_4$、$t_5$ 满足:

$t_1+t_2+t_3+t_4+t_5=0$
$t_1^2+t_2^2+t_3^2+t_4^2+t_5^2=10$
由于是整数解,所以只需要枚举即可很快得到答案.

当然也可以用程序可以验证.a = t /@ Range;a /. List@ToRules@Reduce == 0 && Variance == 5/2, a, Integers]这120个解,其实就是全排列,5!

sunwukong 发表于 2012-10-8 10:49:07

程序验证
// 求出
// i1+i2+i3+i4+i5=0
// i1^2+i2^2+i3^2+i4^2+i5^2=250
// 的所有解

int i,i1,i2,i3,i4,i5;
int sum,sum1,sum2,sum3,sum4;
int s2,s3,s4,s5;
char Syb;
int flag;

Syb = '+';
Syb = '-';
flag = 1;
flag = -1;

for(i1=0; i1<=7; i1++){
    sum1 = i1 * i1;
    for(i2=i1; i2<=7; i2++){
      s2 = i2 * i2;
      if(sum1 + s2 * 4 > 250) break;
      sum2 = sum1 + s2;
      for(i3=i2; i3<=9; i3++){
            s3 = i3 * i3;
            if(sum2 + s3 * 3 > 250) break;
            sum3 = sum2 + s3;
            for(i4=i3; i4<=11; i4++){
                s4 = i4 * i4;
                if(sum3 + s4 * 2 > 250) break;
                s5 = 250 - sum3 - s4;
                i5 = sqrt(s5);
                if(i5 * i5 == s5){
                  // i1 保持为正,轮换 i2 i3 i4 i5 的符号,让其和为 0,
                  for (i=0; i<0b10000; i++){
                        sum =i1;
                        sum += flag * i2;
                        sum += flag * i3;
                        sum += flag * i4;
                        sum += flag * i5;
                        if ( sum == 0 ){
                            cout << Syb      << i1
                                 << Syb << i2
                                 << Syb << i3
                                 << Syb << i4
                                 << Syb    << i5
                                 << endl;
                            break;
                        } // end of if
                  } //end of i
                } //end of i5
            }// end of i4
      }// end of i3
    }// end of i2
} // end of i1
页: [1] 2
查看完整版本: 由方差如何推导数字序列的特征