BZOJ-1013-球形空間產生器sphere,bzoj-1013-sphere

來源:互聯網
上載者:User

BZOJ-1013-球形空間產生器sphere,bzoj-1013-sphere
描述

有一個球形空間產生器能夠在n維空間中產生一個堅硬的球體。現在,你被困在了這個n維球體中,你只知道球面上n+1個點的座標,你需要以最快的速度確定這個n維球體的球心座標,以便於摧毀這個球形空間產生器。

分析


  • 圓上每個點到圓心的距離都相等
  • n維座標下點點之間的距離是dist = sqrt((a1-b1)^2 + (a2-b2)^2 + … + (an-bn)^2)
  • 列出方程, 共有 n+1 個, 但x的冪不為1, 所以兩兩相減得到n個x的冪為1的方程.
  • 過程

(x1-p11)^2 + (x2-p12)^2 + … + (xn-p1n)^2 = r^2
x1^2 - 2*x1*p11 + p11^2 + x2^2 - 2*x2*p12 + p12^2 + … - r^2 = 0

(x1^2 - 2*x1*p11) + … + (xn^2 - 2*xn*p1n) - r^2 = -(p11^2 + p12^2 + … + p1n^2) .. 1
(x1^2 - 2*x2*p21) + … + (xn^2 - 2*xn*p2n) - r^2 = -(p21^2 + p22^2 + … + p2n^2) .. 2
(x1^2 - 2*x3*p31) + … + (xn^2 - 2*xn*p3n) - r^2 = -(p31^2 + p32^2 + … + p3n^2) .. 3
(x1^2 - 2*x4*p41) + … + (xn^2 - 2*xn*p4n) - r^2 = -(p41^2 + p42^2 + … + p4n^2) .. 4
(x1^2 - 2*x5*p51) + … + (xn^2 - 2*xn*p5n) - r^2 = -(p51^2 + p52^2 + … + p5n^2) .. 5

(xn^2 - 2*xn*p{n+1}1) + … - r^2 = -(p{n+1}1^2 + p{n+1}2^2 + … + p{n+1}n^2) .. n+1

2 - 1 : (2*x1*p11-2*x1*p21) + … + (2*xn*p1n-2*xn*p2n) = (p11^2+…+p1n^2) - (p21^2+…+p2n^2) .. 1
3 - 2 : (2*x1*p21-2*x1*p31) + … + (2*xn*p2n-2*xn*p3n) = (p21^2+…+p2n^2) - (p31^2+…+p3n^2) .. 2
….. n
=>
2(p11-p21) * x1 + … + 2(p1n-p2n) * xn = (p11^2+…+p1n^2) - (p21^2+…+p2n^2) .. 1
2(p21-p31) * x1 + … + 2(p2n-p3n) * xn = (p21^2+…+p2n^2) - (p31^2+…+p3n^2) .. 2

… n

代碼

https://code.csdn.net/snippets/619114

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.