资源简介
花束摆放问题
北邮算法设计课程
上课要交的
代码片段和文件信息
#include
#include
using namespace std;
int F V MAX;
int Aes[100][100]={0} Flower[100]={0} Max[100][100]={0};
void AestheticValues() //随机产生花束摆放的美学值
{
srand(time(NULL));
for(int i=1; i<=F; i++)
for(int j=1; j<=V; j++)
Aes[i][j] = 1+rand()%100; //Aes[i][j]为第i束花放在第j个花瓶时的美学值
}
void MaxAesValue() //求出对应的Max[][]数组
{
int i j k max;
for(i=1; i<=F; i++)
for(j=i; j<=V; j++){
max = Max[i-1][i-1]; //Max[i][j]表示前i束花放在前j个花瓶中的最大美学值且第i束放在第j个瓶中
for(k=i; k if(Max[i-1][k] > max)
max = Max[i-1][k];
Max[i][j] = max+Aes[i][j]; //Max[i][j]=Aes[i][j]+max{Max[i-1][i-1]Max[i-1][i]...Max[i-1][j-1]}
}
}
void GetPosition() //求出最大美学值MAX和对应的Flower[]数组
{
MAX = Max[F][F];
- 上一篇:C语言写的简单均值滤波算法
- 下一篇:基于αβ剪枝的优化的五子棋算法
评论
共有 条评论