王二麻聽說躺平國是一個非常神奇的地方。在躺平國裏,有各種神奇的東西。比如:會說話的鐵片,能夠分揀垃圾的小狗,還有會唱京劇的電線杆子。
王二麻的表哥張三李是一個糙漢子,他前幾年在國內混不下去了,一個人去了躺平國。那是一個快樂的國度,每一個人都可以躺平,或者做自己熱愛的事情。
他們可以把日常的事物交給特點的躺平機處理。
王二麻也想去躺平國,但是在去躺平國的路上需要經歷許許多多的困難。 他非常的畏懼。
於是,張三李一直寫信給王二麻,教張三李怎麼樣度過他路途中需要解決的困難,也會給王二麻講躺平國的奇聞異事。
張三李在給王二麻寫的第一封信裏面,講了王二麻會遇到的第一個關卡: 白沙天塹。
白沙天塹是一個大峽谷,上面沒有可以通行的橋樑。白沙天塹下面是白色河,白沙和裏面白色的河沙是沒有能夠度過天塹的挑戰者的白骨的細屑,所有沒能通過白沙天塹的挑戰者被躺平國稱爲——“小白沙雕”。
白沙天塹崖壁是平行的,這兩個崖壁之間的距離會隨機變化,但是崖壁旁邊的石臺上會展示兩個崖壁上所有點滿足的公式,並且提供一個可以跳躍寬度爲 d 的 白沙靴。
爲了能夠安全的度過白沙天塹,挑戰者必須能夠計算出天塹的兩個崖壁之間的距離。當崖壁之間的距離能夠小於等於 白沙靴 的跳躍距離的時候,王二麻就可以拿出靴子跳過天塹。
1 崖壁的表示
爲了更簡單的描述問題,我們將兩個崖壁描述爲兩個平行的超平面。
圖 1 點到平面的距離
如上圖1所示,爲一個超平面 L1, 對超平面上的每一個點x=(d1,d2,...,dn)∈Rn 滿足如下條件:
w⋅x+b=0
其中,w 爲超平面 L1 的法向量。
2 天塹距離的計算
假設,白沙天塹對應的兩個崖壁表示的超平面分別爲 Ls Le, 其中Ls表示起跳超平面,Le表示落地超平面。王二麻的目的就是爲了從,Ls 跳到 Le 那麼我們需要計算兩個超平面之間的距離 d 來判斷跳躍是否成功。
首先,假設王二麻站定點的座標爲 S, 在超平面 Le 上離他最近的落地點的座標爲 E。
設 Ls 滿足公式:
w⋅x+b1=0
Le 滿足公式:
w⋅x+b2=0
那麼:
d=∣SE∣
並且 SE 與平面的法向量平行。
∣w⋅SE∣=∣w∣∣SE∣=w12+w22+...+wn2d=∣∣w∣∣d(1)
並且
∣w⋅SE∣=∣w0(S0−E0)+w1(S1−E1)+...+wn(Sn−En)∣=∣(w0S0+w1S1+...+wnSn+b1)−(w0E0+w1E1+...+wnEn+b2)−b1+b2∣=∣−b1+b2∣(2)
根據公式(1)和(2) 得到:
∣∣w∣∣d=∣−b1+b2∣
那麼兩個平面的距離d=∣∣W∣∣∣−b1+b2∣