題目描述
4月16日是nanae的生日,josnch為此要製作乙個體積為nπ的m層生日蛋糕,每層都是乙個圓柱體。
設從下往上數第i(1 <= i <= m)層蛋糕是半徑為ri, 高度為hi的圓柱。當i < m時,要求ri > ri+1且hi > hi+1。
由於要在蛋糕上抹忌廉,為盡可能節約經費,我們希望蛋糕外表面(最下一層的下底面除外)的面積q最小。
令q = sπ
請程式設計對給出的n和m,找出蛋糕的製作方案(適當的ri和hi的值),使s最小。
(除q外,以上所有資料皆為正整數)
輸入 有兩行,第一行為n(n <= 10000),表示待製作的蛋糕的體積為nπ;第二行為m(m <= 20),表示蛋糕的層數為m。
輸出 僅一行,是乙個正整數s(若無解則s = 0)。
樣例輸入
100
2 樣例輸出 68r
1>r2
>r3
>..
.rm>=1
h1>h2
>h3
>..
.hm>=1
π r1
2 +∑m
i=1
2π r
ihi=
q ∑m
i=1
π ri
2hi=
n
//暴搜+剪枝
#include
#include
#include
#include
#include
using
namespace
std;
int n,m,x,ans;
int f[10005];
int b[30],c[30];
void dfs(int k,int x,int y,int v,int s)
if(sumreturn;
if(k==m)
int l=min(x-1,f[n-v]);//x上限
int min=m-k; //層數下限
for(int i=l;i>=min;i--)
}int main()
if(ans==1e9) cout
<<'0'
cout
0;}
NOI1999 生日蛋糕
noi1999 生日蛋糕 7月17日是mr.w的生日,acm thu為此要製作乙個體積為n 的m層生日蛋糕,每層都是乙個圓柱體。設從下往上數第i 1 i m 層蛋糕是半徑為ri,高度為hi的圓柱。當i時,要求ri ri 1且hi hi 1。由於要在蛋糕上抹忌廉,為盡可能節約經費,我們希望蛋糕外表面 ...
NOI1999 生日蛋糕
7月17日是mr.w的生日,acm thu為此要製作乙個體積為n 的m層 生日蛋糕,每層都是乙個圓柱體。設從下往上數第i 1 i m 層蛋糕是半徑為 r i 高度為 h i 的圓柱。當i r i r 且 h i h 由於要在蛋糕上抹忌廉,為盡可能節約經費,我們希望蛋糕外表面 最下一層的下底面除外 的...
NOI1999 生日蛋糕題解
還是被這個立體的結構嚇到了,隔了半年才 題目描述 7月17日是mr.w的生日,acm thu為此要製作乙個體積為n 的m層 生日蛋糕,每層都是乙個圓柱體。設從下往上數第i 1 i m 層蛋糕是半徑為ri,高度為hi的圓柱。當ir i r ri ri 1 且h i h hi hi 1 由於要在蛋糕上抹...