牛客寒假5-A.炫酷雙截棍
阿新 • • 發佈:2019-02-06
review 不能 min -- sin XML 就是 n) 連接
鏈接:https://ac.nowcoder.com/acm/contest/331/A
題意:
小希現在手裏有一個連著的兩塊木條,長度分別為l1l1,l2l2,木條之間有一個無摩擦的連接點,木條之間可以相互轉動,小希將其稱之為雙截棍。
現在小希把長為l1l1的木條的一端放在原點(0,0),任意轉動這兩根木條,小希想知道,是否有可能通過一種轉動方式使得雙截棍的另一端到達指定點呢?
思路:
到達的距離就是l1 - l2 --- l1 + l2 ,考慮l1,l2的長短,
之後直接算點到原點的距離,記得用double
代碼:
#include<bits/stdc++.h> using namespace std; double Get_Len(double x, double y) { return sqrt(x * x + y * y); } int main() { int l1,l2; cin >> l1 >> l2; if (l1 < l2) swap(l1,l2); double l = l1 - l2, r = l1 + l2; int t; cin >> t; while (t--) { double x,y; cin >> x >> y; double len = Get_Len(x,y); if (len <= r && len >= l) printf("%.8lf\n",0.0); else printf("%.8lf\n",min(abs(len - r), abs(l - len))); } return 0; }
牛客寒假5-A.炫酷雙截棍