HDU 3201 Build a Fence
题目大意:
长度为L的不封闭的曲线, 开口用线段连接, 求其最大面积.
简要分析:
小学数学有这么个结论吧: 封闭曲线周长相等时, 圆的面积最大. 于是我们猜想, 不封闭的曲线, 最优是不是半圆, 然后样例似乎就是这样的. 这个算法的严谨证明还没想到.
代码实现:
View Code
1 #include <cmath>
2 #include <cstdio>
3 #include <cstdlib>
4 #include <cstring>
5 #include <algorithm>
6 using namespace std;
7
8 const double PI = acos(-1.0);
9 int n;
10
11 int main() {
12 while (scanf("%d", &n) != EOF) {
13 if (n == 0) break;
14 printf("%.2lf\n", (n / PI) * (n / PI) * PI * 0.5);
15 }
16 return 0;
17 }