Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ->a{s=Math::PI/18E4
- t=1+d=r=c=0
- a=a.map{|e|e-a[0]}
- 0.upto(36E4){|i|b=a.map{|e|(e/Complex.polar(1,i*s)).rect}.transpose
- m,n=b
- if n.min>=f=0
- l=[m.max-x=m.min,n.max].max
- a.each_index{|j|f+=((l-w=n[j])*(x+l-v=m[j])*(x-v)*w)**2}
- (1E-9>q=f/l**8)&&(c>0&&(i-d)%9E4%89E3>1E3?c=9E9:0;c+=1;d=i)
- q<t&&r=i&&t=q;end}
- c<101&&a[1]?c<1?'impossible':r%9E4/1.0E3:'unknown'}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement