[Swust OJ 771]--奶牛农场(几何题,画图就好)

题目链接:http://acm.swust.edu.cn/problem/771/

 

Description

将军有一个用栅栏围成的矩形农场和一只奶牛,在农场的一个角落放有一只矩形的箱子,有一天将军要出门,他就把奶牛用一根绳子套牢,然后将绳子的另一端绑到了那个箱子不靠栅栏的角上,现在给定箱子的长和宽,绳子的长度,你的问题是计算奶牛能够到达的面积。

Input

有多组测试数据。 每一组数据为一行,三个整数,L(0<=L<=500),M,N(1<=M,N<=500),分别表示绳子的长度,箱子的两边长度。假设农场无限大。

Output

对于每一组测试数据,输出奶牛能够到达的面积,保留两位小数。

Sample Input

1 1 1

Sample Output

2.36

解题思路:就一个几何题,画图就可以了,可以看看下面的图的分析

代码如下:

 1 //箱子在角落里---、--
 2 #include <stdio.h>
 3 #include <math.h>
 4 #define  PI  acos(-1.0)
 5 #define minn(a,b) a<b?a:b
 6
 7 int main() {
 8     double L, M, N, area;
 9     while (scanf("%lf %lf %lf", &L, &M, &N) != EOF) {
10         if (L <= M&&L <= N)
11             area = 0.75 * PI * L * L;
12         //一个三角形,加一个扇形
13         else if (L <= M || L <= N){
14             M = minn(M, N);
15             area = (sqrt((L * L) - (M * M)) * M) / 2.0;
16             N = (acos(M / L) * (180.0 / PI));
17             area += (270.0 - N) / 360.0 * PI * L * L;
18         }
19         //两个三角形,加一个扇形
20         else {
21             area = sqrt(L * L - M * M) * M / 2.0;
22             area += sqrt(L * L - N * N) * N / 2.0;
23             area += (270.0 - ((acos(M / L) + acos(N / L)) * (180.0 / PI))) / 360.0 * PI * L * L;
24         }
25         printf("%.2lf\n", area);
26     }
27     return 0;
28 }
时间: 2024-10-06 17:38:05

[Swust OJ 771]--奶牛农场(几何题,画图就好)的相关文章

[swustoj 771] 奶牛农场

奶牛农场 Description 将军有一个用栅栏围成的矩形农场和一只奶牛,在农场的一个角落放有一只矩形的箱子,有一天将军要出门,他就把奶牛用一根绳子套牢,然后将绳子的另一端绑到了那个箱子不靠栅栏的角上,现在给定箱子的长和宽,绳子的长度,你的问题是计算奶牛能够到达的面积. Input 有多组测试数据. 每一组数据为一行,三个整数,L(0<=L<=500),M,N(1<=M,N<=500),分别表示绳子的长度,箱子的两边长度.假设农场无限大. Output 对于每一组测试数据,输出奶

swust oj 1026--Egg pain&#39;s hzf

题目链接:http://acm.swust.edu.cn/problem/1026/ Time limit(ms): 3000 Memory limit(kb): 65535 hzf is crazy about reading math recently,and he is thinking about a boring problem. Now there are n integers Arranged in a line.For each integer,he wants to know

swust oj 649--NBA Finals(dp,后台略(hen)坑)

题目链接:http://acm.swust.edu.cn/problem/649/ Time limit(ms): 1000 Memory limit(kb): 65535 Consider two teams, Lakers and Celtics, playing a series of NBA Finals until one of the teams wins n games. Assume that the probability of Lakers winning a game is

线段树 [SWUST OJ 764] 校门外的树 Plus Plus

校门外的树 Plus Plus(0764) Time limit(ms): 1000 Memory limit(kb): 65535 Submission: 214 Accepted: 15 Description 西南某科技大学的校门外长度为 L 的公路上有一排树,每两棵相邻的树之间的间隔都是 1 米.我们可以把马路看成一个数轴,马路的一端在数轴 1 的位置,另一端在 L 的位置:数轴上的每个整数点,即 1,2,……,L,都种有一棵树. 现在要将这排树的某一段涂成某种颜色,给定 N 组区间[ 

SWUST OJ Euclid&#39;s Game(0099)

Euclid's Game(0099) Time limit(ms): 1000 Memory limit(kb): 65535 Submission: 1855 Accepted: 589 Description Starts with two unequal positive numbers (M,N and M>N) on the board. Two players move in turn. On each move, a player has to write on the boar

3.7 CSS中的几何题

经过前面的学习.对标准流中的盒子排列方式应该已经很清楚了,下面来做一个习题. 假设有一个网页,其显示结果如图1所示,现在要读者精确地回答出从字母a到x对应的宽度是多少个像素.习题文件位于网页学习网CSS教程资源“第3章\04.htm”. 图1 计算图中各个字母代表的宽度(高度)是多少像素 网页的完整代码如下:lodidance.com <!DOCTYPE html PUBliC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http

数学5. 一道几何题

大连北纬39°,北回归线纬度为23.5°. 在夏至时,太阳直射北回归线. 请问:此时在大连太阳落山时是西偏南,还是西偏北?多少度? 数学5. 一道几何题,布布扣,bubuko.com

cdoj 93 King&#39;s Sanctuary 傻逼几何题

King's Sanctuary Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/93 Description The king found his adherents were building four sanctuaries for him. He is interested about the positions of the sanctuaries and want

背包 [POJ 2184 SWUST OJ 145] Cow Exhibition

Cow Exhibition Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9479   Accepted: 3653 Description "Fat and docile, big and dumb, they look so stupid, they aren't much  fun..."  - Cows with Guns by Dana Lyons The cows want to prove to