算法-大作業-圓排列問題

1.問題 給定n個圓的半徑序列,將它們放到矩形框中,各圓與矩形底邊相切,求具有最小排列長度的圓排列。 2.解析 圓的擺放位置不同,得到的結果可能不同,所以這是一個排列問題,在回溯裏面需要添加全排列的代碼。 要得到圓排列的長度,我們需要知道最右邊圓心的橫座標,+它的半徑+第一個圓的半徑。通過下圖可知,第n個圓的圓心橫座標=與他相切的圓的橫座標+2*sqrt(r[n]*r[n-1])。因爲當前圓可能和
相關文章
相關標籤/搜索