首先發出題目鏈接:
鏈接:https://ac.nowcoder.com/acm/contest/881/F
來源:牛客網
涉及:概率期望
點擊這裏 回到2019牛客暑期多校訓練營解題—目錄貼
題目如下:
題目好水啊
首先將△ A B C \triangle_{ABC} △ A B C 這樣分解,如圖所示
解釋一波:
A ′ , B ′ , C ′ A',B',C' A ′ , B ′ , C ′ 分別爲A B , A C , B C AB,AC,BC A B , A C , B C 的中點 ,O O O 爲△ A B C \triangle_{ABC} △ A B C 的重心
h 1 , h 0 , h 2 h_1,h_0,h_2 h 1 , h 0 , h 2 分別爲△ A A ′ B ′ , △ A ′ B ′ O , △ O B C \triangle_{AA'B'},\triangle_{A'B'O},\triangle_{OBC} △ A A ′ B ′ , △ A ′ B ′ O , △ O B C 的高 ,且h 0 + h 1 + h 2 h_0+h_1+h_2 h 0 + h 1 + h 2 爲△ A B C \triangle_{ABC} △ A B C 的高
O 1 , O 2 O_1,O_2 O 1 , O 2 分別爲△ A A ′ B ′ , △ A ′ B ′ O \triangle_{AA'B'},\triangle_{A'B'O} △ A A ′ B ′ , △ A ′ B ′ O 的重心
首先確定一點:若P落在四邊形A A ′ O B ′ AA'OB' A A ′ O B ′ 內,那麼m a x { S A P B , S B P C , S C P A } = S B P C max\left\{S_{APB},S_{BPC},S_{CPA}\right\}=S_{BPC} m a x { S A P B , S B P C , S C P A } = S B P C
然後再來判斷h 0 , h 1 , h 2 h_0,h_1,h_2 h 0 , h 1 , h 2 之間的關係:
由於△ A ′ B ′ O \triangle_{A'B'O} △ A ′ B ′ O 與△ B C O \triangle_{BCO} △ B C O 相似,且2 ∣ O A ′ ∣ = ∣ O C ∣ 2|OA'|=|OC| 2 ∣ O A ′ ∣ = ∣ O C ∣ ,故h 2 = 2 h 0 h_2=2h_0 h 2 = 2 h 0 ;
由於h 1 = h 0 + h 2 h_1=h_0+h_2 h 1 = h 0 + h 2 ,故h 1 = 3 h 0 h_1=3h_0 h 1 = 3 h 0
1.考慮P點落在△ A A ′ B ′ \triangle_{AA'B'} △ A A ′ B ′ 內
如圖所示,P點落在△ A A ′ B ′ \triangle_{AA'B'} △ A A ′ B ′ 中時,S P B C S_{PBC} S P B C 的期望剛好是S O 1 B C S_{O_1BC} S O 1 B C
此時E S P B C = S O 1 B C = 1 2 ( h 0 + h 0 + 2 h 0 ) ∣ B C ∣ = 2 h 0 ∣ B C ∣ E_{S_{PBC}}=S_{O_1BC}=\frac {1}{2}(h_0+h_0+2h_0)|BC|=2h_0|BC| E S P B C = S O 1 B C = 2 1 ( h 0 + h 0 + 2 h 0 ) ∣ B C ∣ = 2 h 0 ∣ B C ∣
2.考慮P點落在△ O A ′ B ′ \triangle_{OA'B'} △ O A ′ B ′ 內
如圖所示,P點落在△ O A ′ B ′ \triangle_{OA'B'} △ O A ′ B ′ 中時,S P B C S_{PBC} S P B C 的期望剛好是S O 2 B C S_{O_2BC} S O 2 B C
由於△ O 2 A ′ B ′ \triangle_{O_2A'B'} △ O 2 A ′ B ′ 的高爲1 3 h 0 \frac 1{3}h_0 3 1 h 0 ,所以△ O 2 B C \triangle_{O_2BC} △ O 2 B C 的高爲( h 0 − 1 3 h 0 + 2 h 0 ) = 8 3 h 0 (h_0-\frac 1{3}h_0+2h_0)=\frac 8{3}h_0 ( h 0 − 3 1 h 0 + 2 h 0 ) = 3 8 h 0
此時E S P B C = S O 2 B C = 1 2 ∗ 8 3 h 0 ∣ B C ∣ = 4 3 h 0 ∣ B C ∣ E_{S_{PBC}}=S_{O_2BC}=\frac {1}{2}*\frac 8{3}h_0|BC|=\frac 4 {3}h_0|BC| E S P B C = S O 2 B C = 2 1 ∗ 3 8 h 0 ∣ B C ∣ = 3 4 h 0 ∣ B C ∣
由於3 S A ′ B ′ O = S A A ′ B ′ 3S_{A'B'O}=S_{AA'B'} 3 S A ′ B ′ O = S A A ′ B ′ ,所以P點落在△ A A ′ B ′ \triangle_{AA'B'} △ A A ′ B ′ 的概率爲3 4 \frac 3
{4} 4 3 ,落在△ O A ′ B ′ \triangle_{OA'B'} △ O A ′ B ′ 的概率爲1 3 \frac 1{3} 3 1
所以P點落在四邊形A A ′ O B ′ AA'OB' A A ′ O B ′ 的期望E A A ′ O B ′ E_{AA'OB'} E A A ′ O B ′
E A A ′ O B ′ = 1 4 S O 2 B C + 3 4 S O 1 B C = 11 6 h 0 ∣ B C ∣ E_{AA'OB'}=\frac 1{4}S_{O_2BC}+\frac 3{4}S_{O_1BC}=\frac {11}{6}h_0|BC| E A A ′ O B ′ = 4 1 S O 2 B C + 4 3 S O 1 B C = 6 1 1 h 0 ∣ B C ∣
而P點落在四邊形A A ′ O B ′ , A ′ O C ′ B , B ′ O C ′ C AA'OB',A'OC'B,B'OC'C A A ′ O B ′ , A ′ O C ′ B , B ′ O C ′ C 的概率是相同的。
所以
E = E A A ′ O B ′ = 11 6 h 0 ∣ B C ∣ = 11 18 S A B C E=E_{AA'OB'}=\frac {11}{6}h_0|BC|=\frac {11}{18}S_{ABC} E = E A A ′ O B ′ = 6 1 1 h 0 ∣ B C ∣ = 1 8 1 1 S A B C
而
36 E = 22 S A B C 36E=22S_{ABC} 3 6 E = 2 2 S A B C
注意,答案是long long類型,在算期望的過程中也要注意類型轉換!!
已知三點座標爲( x 1 , y 1 ) , ( x 2 , y 2 ) , ( x 3 , y 3 ) (x_1,y_1),(x_2,y_2),(x_3,y_3) ( x 1 , y 1 ) , ( x 2 , y 2 ) , ( x 3 , y 3 ) ,則三角形面積
S = ∣ ( x 2 − x 1 ) ∗ ( y 3 − y 1 ) − ( y 2 − y 1 ) ∗ ( x 3 − x 1 ) ∣ S=|(x_2-x_1)*(y_3-y_1)-(y_2-y_1)*(x_3-x_1)| S = ∣ ( x 2 − x 1 ) ∗ ( y 3 − y 1 ) − ( y 2 − y 1 ) ∗ ( x 3 − x 1 ) ∣
注意( x 2 − x 1 ) ∗ ( y 3 − y 1 ) (x_2-x_1)*(y_3-y_1) ( x 2 − x 1 ) ∗ ( y 3 − y 1 ) 和( y 2 − y 1 ) ∗ ( x 3 − x 1 ) (y_2-y_1)*(x_3-x_1) ( y 2 − y 1 ) ∗ ( x 3 − x 1 ) 都是long long類型
代碼如下:
#include < iostream>
#include < cmath>
using namespace std;
typedef long long ll;
int main ( ) {
int x1, x2, x3;
int y1, y2, y3;
while ( ~ scanf ( "%d%d%d%d%d%d" , & x1, & y1, & x2, & y2, & x3, & y3) ) {
ll ans= ( ll) ( x2- x1) * ( y3- y1) - ( ll) ( y2- y1) * ( x3- x1) ;
printf ( "%lld\n" , ( ll) abs ( ans) * 11 ) ;
}
return 0 ;
}