POJ 3122 分披薩(二分查詢)

2021-09-19 08:13:12 字數 2090 閱讀 7331

有 n 塊披薩(大小不一樣), f 個人分,包含主人自己 f+1 人;

每人吃的披薩必須是一塊披薩上切下來的。每個人吃的披薩相等,披薩可以有剩餘。求每人吃的最大披薩面積。

/**

* @description: 有 n 塊披薩(大小不一樣), f 個人分,包含主人自己 f+1 人;

* 每人吃的披薩必須是一塊披薩上切下來的。求

* @author: michael ming

* @date: 2019/4/20 0:23

* @modified by:

*/#include

#include

#define pi 3.14159265359

using

namespace std;

const

double error =

1e-7

;double

find_max_r

(size_t pizza_num,

int*r_pizza,

double r_low,

double r_high, size_t people)

return r_we_want;

}int

main()

r_max_pizza =

find_max_r

(pizza_num,r_pizza,

0,r_max_pizza,friend_num+1)

; cout <<

setiosflags

(ios::fixed)

<<

setprecision(4

)<< pi*r_max_pizza*r_max_pizza << endl;

delete

r_pizza;

r_pizza =

null;}

return0;

}

/**

* @description: 有 n 塊披薩(大小不一樣), f 個人分,包含主人自己 f+1 人;

* 每人吃的披薩必須是一塊披薩上切下來的。求

* @author: michael ming

* @date: 2019/4/20 0:23

* @modified by:

*/#include

#include

#include

#include

#define pi acos(-1.0)

using

namespace std;

const

double error =

1e-7

;double

find_max_r

(size_t pizza_num,

double

*s_pizza,

double s_low,

double s_high, size_t people)}if

(people_get_pizza >= people)

s_low = s_we_want;

else

s_high = s_we_want;

}return s_we_want;

}int

main()

sort

(s_pizza, s_pizza+pizza_num)

; s_max_pizza =

find_max_r

(pizza_num,s_pizza,

0,s_pizza[pizza_num-1]

,friend_num+1)

; cout <<

setiosflags

(ios::fixed)

<<

setprecision(4

)<< pi*s_max_pizza << endl;

delete

s_pizza;

s_pizza =

null;}

return0;

}

POJ 3122(二分查詢的應用 分披薩)

題目大意 主人過生日,f個人來給他慶生,但是只有n個pizza,現在要將n個pizza分給f 1個人 包括主人自己 問每個人能分到pizza的最大體積是多少,要求每個人所分的pizza只能是從乙個pizza上切下來的,不可以用好多小塊拼湊成體積相同的pizza。思路 利用二分查詢的方法解決該問題。1...

poj 3122 二分查詢

鏈結 poj 3122 題意 我生日派對時,準備了n個圓柱形的pie,半徑比一定相同,但高都為1,邀請了f個朋友,加上自己一共f 1人,需要將n個pie分給f 1個人 要求 每個人分得的pie尺寸要一樣大,並且同乙個人所分的pie要是從同乙個pie上得到的,n個pie分完後可以有剩餘 求 每個人最多...

poj 3122 二分 分蛋糕

題意 每組測試案例包括了,蛋糕的塊兒數,朋友數,以及所有高度為1的 圓柱形蛋糕的半徑,要求從這些蛋糕中分一塊分別給朋友和自己 f 1 並且每一塊蛋糕要來自同一塊兒大蛋糕,因為這樣看起來美觀,求最後每個人得到的蛋糕大小 pi s include include include define pi 3....