#pragma GCC optimize("Ofast") #pragma GCC target("avx2") #define PI 3.14159265358979323846 struct S { int x,y,r,v,a; } s[12]; int n; double w; double limit=2000; double dp[1<<12][12]; static inline double sq(double x){ return x*x; } static inline double f(double ix,double iy,double it,struct S js){ double lo=0; double hi=(sqrt(sq(js.x-ix)+sq(js.y-iy))+js.r)/w; for(int k=0;k<18;++k){ double mid=(lo+hi)*.5; double jt=it+mid; double ja=(jt*js.v+js.a)*(PI/180); double jx=js.x+js.r*cos(ja); double jy=js.y+js.r*sin(ja); if(sq(jx-ix)+sq(jy-iy)r){ dp[m|1<r){ z=r; } } printf("%f",z); }