bzoj1024 SCOI2009 生日快樂

2022-05-19 05:32:48 字數 907 閱讀 1874

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

$1 \leqslant x,y \leqslant 10000 $; \(1 \leqslant n \leqslant 10\)

有1024這個題號和scoi的雙保險這道題一定是良心題。

注意到\(n\)很小,大爆搜即可。

之前嘗試把main壓到一行去,結果壓爆了。

#include#include#include#includeusing namespace std;

#define rep(ii, aa, bb) for (int ii = aa; ii <= bb; ii++)

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

double xba = x / cnt, yba = y / cnt, ans = 10000.0;

rep(i, 1, cnt - 1) ans = min(ans, max(dfs(xba * i, y, i), dfs(x - xba * i, y, cnt - i)));

rep(i, 1, cnt - 1) ans = min(ans, max(dfs(x, yba * i, i), dfs(x, y - yba * i, cnt - i)));

return ans;

}int main()

BZOJ1024 SCOI2009 生日快樂

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

bzoj1024 SCOI2009 生日快樂

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

BZOJ1024 SCOI2009 生日快樂

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