SCOI2009 生日快樂(搜尋)

2021-08-14 02:24:52 字數 902 閱讀 9750

description

windy的生日到了,為了慶祝生日,他的朋友們幫他買了乙個邊長分別為 x 和 y 的矩形蛋糕。現在包括windy,一共有 n 個人來分這塊大蛋糕,要求每個人必須獲得相同面積的蛋糕。windy主刀,每一切只能平行於一塊蛋糕的一邊(任意一邊),並且必須把這塊蛋糕切成兩塊。這樣,要切成 n 塊蛋糕,windy必須切 n-1 次。為了使得每塊蛋糕看起來漂亮,我們要求 n塊蛋糕的長邊與短邊的比值的最大值最小。你能幫助windy求出這個比值麼?

input

包含三個整數,x y n。1 <= x,y <= 10000 ; 1 <= n <= 10

output

包含乙個浮點數,保留6位小數。

sample input

5 5 5
sample output
1.800000
觀察資料範圍:n≤

10 n≤10

,那麼可以搜尋。

注意到這個問題是可以遞迴處理的:

定義函式:double dfs(double x, double y, int div){}表示將長為 x ,寬為 y 的矩形等面積分成 div 份所得到的最小長寬比,則每次列舉橫切位置或縱切位置將矩形切成兩塊,遞迴處理每一塊即可,當前層的答案即所有切法的最小值。

#include

#include

using

namespace

std;

const

double inf = 1e9;

int x, y, n;

double dfs(double x, double y, int div)

return res;

}int main()

SCOI2009 生日快樂

windy的生日到了,為了慶祝生日,他的朋友們幫他買了乙個邊長分別為 x 和 y 的矩形蛋糕。現在包括windy 一共有 n 個人來分這塊大蛋糕,要求每個人必須獲得相同面積的蛋糕。windy主刀,每一切只能平行於一塊蛋糕 的一邊 任意一邊 並且必須把這塊蛋糕切成兩塊。這樣,要切成 n 塊蛋糕,win...

1024 SCOI2009 生日快樂

windy的生日到了,為了慶祝生日,他的朋友們幫他買了乙個邊長分別為 x 和 y 的矩形蛋糕。現在包括windy,一共有 n 個人來分這塊大蛋糕,要求每個人必須獲得相同面積的蛋糕。windy主刀,每一切只能平行於一塊蛋糕的一邊 任意一邊 並且必須把這塊蛋糕切成兩塊。這樣,要切成 n 塊蛋糕,wind...

1024 SCOI2009 生日快樂

time limit 1 sec memory limit 162 mb submit 3217 solved 2346 submit status discuss windy的生日到了,為了慶祝生日,他的朋友們幫他買了乙個邊長分別為 x 和 y 的矩形蛋糕。現在包括windy 一共有 n 個人來分...