input
the first line contains an integer n(3≤n≤1000), indicating the number of mirrors;
then n lines follow. the ith line contains three real numbers xi,yi,ki(−109≤xi,yi≤109;0≤ki≤0.9)xi,yi,ki(−109≤xi,yi≤109;0≤ki≤0.9), which means the ith mirror's one end is at position (xi,yi)(xi,yi) and another end is at (xi+1xi+1mod n,yi+1yi+1mod n), and its reflectivity is kiki.
next there are two real numbers vx,vy(-109≤vx,vy≤109), indicating the initial direction vector of the laser beam.
lsf is standing at the origin (0, 0).
output
sample input
4sample output1 2 0.5
-1 0 0.5
1 -2 0.5
3 0 0.5
0 14
1 1 0.5
-1 1 0.5
-1 -1 0.5
1 -1 0.5
1 1
14題解:因為0.1<=k<=0.9因此最多反射100,就一定可以消失。首先,我們判斷該射線是否可以與鏡面相交,如果與某一鏡面相交,我們再判斷是指向鏡面還是反向指向鏡面的,然後,我們可以計算出射線,與鏡面的交點(用兩個向量的投影相等)。然後更新o點與向量v;1
#includeusing namespace std;
struct point point[2010];
point v;
point vec(point a,point b);}
double cha_ji(point a,point b) //判斷是否相交
point jiao_point(point o,point v,point a,point b)//求交點 ;}
double nod(point a,point b)
int main()
{ int n;
while(scanf("%d",&n)!=eof)
{ for(int i=0;i=1e-4)
{ for(int i=0;i
posted @
2018-07-25 17:25
songhl 閱讀(
...)
編輯收藏
牛客 多校賽一
a lgv演算法 抄一波 牛客的解釋 wiki 沒耐心看了 lgv 演算法 lindstr m gessel viennot lemma 求以上矩陣的行列式,其中 e a,b 是從a到b的方法數,帶入求行列式即可得到 a1,a2,an 到 b1,b2,bn 的所有不相交路徑的種數 再看這道題,其實就...
2018全國多校1 B題
做題的時候千萬不要因為為了過樣例把某個數特判了。一定要按著正確的思路去做題qaq 還有就是,做題的時候面多0相關的位置一定要慎重慎重。include include int a 1005 b 1005 c 1005 intcout 0,lss long long shanghai void zhix...
2018全國多校1 F題
稍微有點坑的地方在於。最後一秒鐘要是血不夠扣,只要不是0仍然能夠進去 還有一點就是如果正好扣到0的時候再補血也是死人的,如果你正好跑在最後一秒沒血了也是死 但是如果你最後一秒血量為2,然後一秒扣6滴。這時候你是能夠跑到安全區 include int main run xue a printf d n...