有 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....