UVa 815 洪水!

2022-11-26,

https://vjudge.net/problem/UVA-815

题意:一个n*m的方格区域,共有n*m个方格,每个方格是边长为10米的正方形,整个区域的外围是无限高的高墙,给出这n*m个方格的初始高度,和洪水的总体积,计算灌入洪水后这个方格区域的水面高度,以及洪水淹没比例。

思路:

看这张图就很容易明白。

 #include<iostream>
#include<algorithm>
using namespace std; int ans[]; int main()
{
//freopen("D:\\txt.txt", "r", stdin);
int m, n, kase = ;
double flood, percent;
while (cin >> m >> n,m&&n)
{
percent = ;
for (int i = ; i < m*n; i++)
cin >> ans[i];
cin >> flood;
flood /= 100.0;
sort(ans, ans + m*n);
double high;
for (int i = ; i <= m*n; i++)
{
flood += ans[i - ];
high = flood / i;
if (high <= ans[i])
{
percent = (double)i / (m*n);
break;
}
} cout << "Region " << ++kase << endl;
printf("Water level is %.2lf meters.\n", high);
printf("%.2lf percent of the region is under water.\n\n", percent * );
}
return ;
}

UVa 815 洪水!的相关教程结束。

《UVa 815 洪水!.doc》

下载本文的Word格式文档,以方便收藏与打印。