洛谷1120小木棍

2021-07-23 23:21:12 字數 930 閱讀 1153

題目描述:

喬治有一些同樣長的小木棍,他把這些木棍隨意砍成幾段,直到每段的長都不超過50。

現在,他想把小木棍拼接成原來的樣子,但是卻忘記了自己開始時有多少根木棍和它們的長度。

給出每段小木棍的長度,程式設計幫他找出原始木棍的最小可能長度。

輸入輸出格式

輸入格式:

輸入檔案共有二行。

第一行為乙個單獨的整數n表示砍過以後的小木棍的總數,其中n≤65

(管理員注:要把超過50的長度自覺過濾掉,坑了很多人了!)

第二行為n個用空個隔開的正整數,表示n根小木棍的長度。

輸出格式:

輸出檔案僅一行,表示要求的原始木棍的最小可能長度

輸入輸出樣例

輸入樣例#1:

95 2 1 5 2 1 5 2 1

輸出樣例#1:

6---------------------------

各種剪枝

基本思路:

從小到大遍歷原來木棍可能的長度

把木棍排序,按從大到小的順序填入原來的木棍中.

具體剪枝直接看**

#include#include#includeusing namespace std;

const int maxn = 65;

int n;

int a[maxn];

int vis[maxn];

int dfs(int lim, int len, int cnt, int last)

return 0;

}int main()

sort(a, a + n);

for(int i = a[1]; i <= sum / 2; i ++)

if(sum % i == 0) //剪枝

}printf("%d", sum);

}

洛谷 1120 小木棍 資料加強版

題目描述 喬治有一些同樣長的小木棍,他把這些木棍隨意砍成幾段,直到每段的長都不超過5050。現在,他想把小木棍拼接成原來的樣子,但是卻忘記了自己開始時有多少根木棍和它們的長度。給出每段小木棍的長度,程式設計幫他找出原始木棍的最小可能長度。輸入輸出格式 輸入格式 共二行。第一行為乙個單獨的整數n表示砍...

洛谷 1120 小木棍(資料加強版)

喬治有一些同樣長的小木棍,他把這些木棍隨意砍成幾段,直到每段的長都不超過50。現在,他想把小木棍拼接成原來的樣子,但是卻忘記了自己開始時有多少根木棍和它們的長度。給出每段小木棍的長度,程式設計幫他找出原始木棍的最小可能長度。輸入格式 輸入檔案共有二行。第一行為乙個單獨的整數n表示砍過以後的小木棍的總...

洛谷 小木棍

description 喬治有一些同樣長的小木棍,他把這些木棍隨意砍成幾段,直到每段的長都不超過50 現在,他想把小木棍拼接成原來的樣子,但是卻忘記了自己開始時有多少根木棍和它們的長度。給出每段小木棍的長度,程式設計幫他找出原始木棍的最小可能長度。input 第一行為乙個單獨的整數 n表示砍過以後的...