#pragma warning(disable:4996)
#include<cstdio>
#include<cstring>
#include<string>
#include<cmath>
#include<vector>
#include<algorithm>
#include<iostream>
#include<time.h>
#include<map>
#include<set>
#include<sstream>
#include<cassert>
#include<string.h>
using namespace std;
const int INF = 0x3f3f3f3f;
double table[1600];
int main()
{
int n, m;
int cas = 1;
while (cin >> n >> m, n || m)
{
double sumh;
for (int i = 0;i < n*m;i++)
{
cin >> table[i];
}
double v;
cin >> v;
sumh = (double)v / 100;
sort(table, table + n*m);
int flag = 0;
int num = 1;
for (int i = 0;i < n*m;i++)
{
double temp = sumh;
for (int j = 0;j < i;j++)
{
temp -= (table[i] - table[j]);
if (temp <= 0)
{
num = i;
flag = 1;
break;
}
}
if (flag)
break;
}
if (flag == 0)
num = n*m;
for (int i = 0;i < num;i++)
{
sumh -= (table[num - 1] - table[i]);
}
double h = table[num - 1] + (double)sumh / num;
cout << "Region " << cas++ << endl;
cout << "Water level is ";
printf("%.2lf", h);
cout << " meters." << endl;
double cnt = 0;
printf("%.2lf", (double)num / (n*m) * 100);
cout << " percent of the region is under water.\n\n";
}
return 0;
}
UVa815
最新推荐文章于 2022-08-24 09:05:26 发布