題目描述用dfs(i,x,y,z)表示用完了長度小於等於i的木條,三邊長度分別為x,y,z。儲存每個長度的木條有幾根,再規定x>=y>=z,再加上判重,速度就很快了。和所有人一樣,奶牛喜歡變化。它們正在設想新造型的牧場。奶牛建築師hei想建造圍有漂亮白色柵欄的三角形牧場。她擁有n(3≤n≤40)塊木板,每塊的長度li(1≤li≤40)都是整數,她想用所有的木板圍成乙個三角形使得牧場面積最大。
請幫助hei小姐構造這樣的牧場,並計算出這個最大牧場的面積。 輸入輸出格式 輸入格式:
第1行:乙個整數n
第2..n+1行:每行包含乙個整數,即是木板長度。
輸出格式:
僅乙個整數:最大牧場面積乘以100然後舍尾的結果。如果無法構建,輸出-1。
#include
#include
#include
#include
using
namespace
std;
int a[45],n,mx;
bool vis[45][1600][800];
double ans=-1;
double s(int x,int y,int z)
void dfs(int p,int x,int y,int z)
if (xif (xif (yif (vis[p][x][y]) return;
vis[p][x][y]=1;
for (i=0;i<=a[p];i++)
for (j=0;i+j<=a[p];j++)
dfs(p+1,x+i*p,y+j*p,z+(a[p]-i-j)*p);
}int main()
dfs(1,0,0,0);
if (ans<0) printf("-1\n");
else
printf("%d\n",(int)(ans*100));
}
洛谷 P1284 三角形牧場
題目描述 和所有人一樣,奶牛喜歡變化。它們正在設想新造型的牧場。奶牛建築師hei想建造圍有漂亮白色柵欄的三角形牧場。她擁有n 3 n 40 塊木板,每塊的長度li 1 li 40 都是整數,她想用所有的木板圍成乙個三角形使得牧場面積最大。請幫助hei小姐構造這樣的牧場,並計算出這個最大牧場的面積。輸...
DP 三角形牧場
時間限制 1 sec 記憶體限制 128 mb 和所有人一樣,奶牛喜歡變化。它們正在設想新造型的牧場。奶牛建築師hei想建造圍有漂亮白色柵欄的三角形牧場。她擁有n 3 n 40 塊木板,每塊的長度li 1 li 40 都是整數,她想用所有的木板圍成乙個三角形使得牧場面積最大。請幫助hei小姐構造這樣...
洛谷1216 數字三角形
題目描述 觀察下面的數字金字塔。寫乙個程式來查詢從最高點到底部任意處結束的路徑,使路徑經過數字的和最大。每一步可以走到左下方的點也可以到達右下方的點。7 3 8 8 1 02 7 4 4 4 5 2 6 5 在上面的樣例中,從7 到 3 到 8 到 7 到 5 的路徑產生了最大 輸入輸出格式 輸入格...