给你n 种长方体,每种长方体x,y,z。每个长方体都有无限个
然后用这些长方体叠起来求最高的高度。
上层的长方体x,y为xi,yi,下层的为xj,yj,要满足xi < xj && yi < yj
这样把x 或y 升序排序 就变成求最长上升子序列。然后每个长方体x,y,z,有6种组合。处理一下。
代码看着比较蛋疼0 0
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
int const MAXN = 200;
int dp[MAXN];
struct M{
int x,y,z;
}m[MAXN];
void F(int x,int y,in......
阅读全文