1147 Heaps (30分)
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<vector>
#include<string>
#include<algorithm>
using namespace std;
vector<int>v;
int m, n;
void postOrder(int index)
{
if (index > n) return;
postOrder(index * 2 );
postOrder(index * 2 + 1);
printf("%d%s", v[index], index == 1 ? "\n" : " ");
}
int main() {
freopen("input.txt", "r", stdin);
cin >> m>>n;
v.resize(n+1);
for(int i =0 ;i<m;i++)
{
for (int j = 1; j <=n; j++)
cin >> v[j];
bool isMax = is_heap(v.begin()+1, v.end(), less<int>());
bool isMin = is_heap(v.begin() + 1, v.end(), greater<int>());
if (!isMax && !isMin)printf("Not Heap\n");
else isMin == true ? printf("Min Heap\n") : printf("Max Heap\n");
postOrder(1);
}
return 0;
}