• 利用离散 Fourier 变换解一元二次方程


    设二次方程
    $$
    x^2+bx+c=0
    $$
    的两个根分别为 $x_1,x_2$.则
    $$
    (x-x_1)(x-x_2)=x^2+bx+c.
    $$
    因此
    $$
    egin{cases}
      x_1+x_2=-b\
    x_1x_2=c\
    end{cases}
    $$
    进行离散 Fourier 变换,即
    $$
    egin{pmatrix}
      u_1\
    v_1\
    end{pmatrix}=egin{pmatrix}
      omega^{0}&omega^{1}\
    omega^{0}&omega^{2}\
    end{pmatrix}egin{pmatrix}
      x_1\
    x_2\
    end{pmatrix}.
    $$
    其中 $omega$ 是方程 $x^2=1$ 的不等于1的根,即 $omega=-1$.于是
    $$
    egin{cases}
    u_1=x_1-x_2\
    v_1=x_1+x_2\
    end{cases}
    $$
    也即
    $$
    egin{cases}
    x_1=frac{1}{2}(u_1+v_1)\
    x_2=frac{1}{2}(v_1-u_1)\
    end{cases}.
    $$
    于是
    $$
    egin{cases}
    v_1=-b\
    frac{1}{4}(v_1^2-u_1^2)=c.
    end{cases}
    $$
    解得
    $$
    egin{cases}
      v_1=-b\
    u_1=pmsqrt{b^2-4c}
    end{cases}
    $$
    然后容易得出 $x_1,x_2$ 的值.

  • 相关阅读:
    设置装订线
    设置页边距
    查看压缩文件的信息
    格式化3
    格式化2
    条件格式化1
    单独设置奇偶页的页眉页脚
    方法重写注意点
    super注意点
    稀疏数组的压缩和还原
  • 原文地址:https://www.cnblogs.com/yeluqing/p/3827414.html
Copyright © 2020-2023  润新知