本题是一道DFS+剪枝的经典例题,详情请看代码注释,里面按照我个人的理解进行了详细的解释
#include <cstdio>
#include <iostream>
#include <string>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <vector>
#include <map>
#include <set>
#include <stack>
#include <queue>
using namespace std;
int N, M;
int minV[30], minA[30];
int area = 0;
int mina = 1 << 30;
//求在剩余n层,底面最大半径为r,高度最大为h的情