Problem D: Tour de France
競速自行車的驅動取決於一條連接兩個齒輪的鏈。齒輪被分別兩個部分,前齒輪(通常只會 2 或 3 個齒輪) 以及後齒輪 (通常會有 5 到 10 個齒輪)。
//想像一下可換檔腳踏車
在任何時間,鏈條將可以選擇一個前齒輪和一個後齒輪去搭配。而傳動比率 d (輪子與踏板的角速度比率)為 n:m,n 為後齒輪的齒數,m 為前齒輪的齒數。
如果不存在其他傳動比率符合d1<d3<d2,則說兩個傳動比率 d1<d2 相鄰。而希望計算 spread 對於所有兩個 d1<d2,spread = d2/d1。
你將要計算最大的 spread。
輸入將會有多組測資,最後一行以一個 0 作為程式結束。
每組測資將會包含下列
- f: 前齒輪的個數
- r: 後齒輪的個數
- f 個整數,分別代表每個前齒輪的齒數。
- r 個整數,分別代表每個後齒輪的齒數。
對於每組輸出最大的 spread。
Sample Input
2 4 40 50 12 14 16 19 0
Output for Sample Input
1.19
Ondrej Lhotak and Gordon V. Cormack
沒有留言:
張貼留言