XJOI網上同步測試DAY14 T2

2022-05-09 01:30:08 字數 1423 閱讀 3979

思路:先考慮在d高度的最小圓覆蓋,再一層一層往下走時,可以保證圓心與最開始的圓相同的時候答案是最優的。

時間複雜度o(n)

有乙個坑點,就是我用了srand(time(null))就t了,rp太差了。。

#include#include

#include

#include

#include

#include

const

double eps=1e-8

;const

double inf=1e60;

const

double pi=acos(-1

);struct

point

point(

double x0,double

y0):x(x0),y(y0){}

}p[500005

],o;

struct

line

line(point s0,point e0):s(s0),e(e0){}

};point

operator -(point p1,point p2)

point

operator +(point p1,point p2)

point

operator *(point p,double

x)point

operator /(point p,double

x)double

operator *(point p1,point p2)

double sqr(double

x)double

dis(point p1)

double

dis(point p1,point p2)

intn;

double cost[500005

],d,r;

inth;

intread()

while ('0'

<=ch&&ch<='9')

return t*f;

}point inter(line p1,line p2)

point turn(point p,

double

ang)

point calc(point p1,point p2,point p3)

intmain()

}}

double ans=inf,rr,xx,yy;

inthh;

h=std::min(h,dd);

for (int i=0;i<=h;i++)

}printf(

"%.10f\n

",ans);

printf(

"%.10f %.10f %d %.10f\n

",xx,yy,hh,rr);

}

XJOI網上同步訓練DAY3 T1

思路 看來我真是思博了,這麼簡單的題目居然沒想到,而且我對複雜度的判定也有點問題。首先我們選了乙個位置i的b,那一定只對i和以後的位置造成改變,因此我們可以這樣看 我們從前往後選,發現乙個位置的s和r相等,然後我們就選這個位置的bi,由於bi會改變當前位置,因此當前位置的vi我們就能吃到了。所以,每...

XJOI網上同步訓練DAY1 T3

思路 一開始看到這題的時候想dp,可是發現貌似不行。因為有字首也有字尾,而且有的字尾會覆蓋到現在的字首,這就不滿足無後效性了啊!但是有個很巧妙的思路 如果我們知道a i 的最大值,那麼p的數量和q的數量也確定了。所以序列長度也確定了,設m為序列長度。而且對於每個a i 都代表了乙個固定數量的p和q和...

效能測試培訓day1

測試本質 1構造測試資料和期望結果 2執行 3驗證 自動化測試 寫完 單元測試測 邏輯,單元測試搞清楚 邏輯就行了 白盒測試 先靜態,執行前用工具掃瞄bug例如 a 11寫成a 11 再動態,程式執行起來測試,用單元測試框架 unittest等 整合測試,兩個函式,兩個子系統,兩個介面。粒度可大可小...