I Think I Need a Houseboat 1005 PKU

利用数学公式计算腐蚀时间

description:

某个地方被Mississippi河腐蚀每年都会有50square miles,而且总共腐蚀是个半圆,求给定一个点什么时候会被腐蚀

solution:

求该点到(0,0)的长度r,求以r为半径半圆的面积area,除以50即可得到答案

1. 一个难点是浮点型精度的处理,但是好像多想了,题目给出HINT:No property will appear exactly on the semicircle boundary: it will either be inside or outside.

 

1 #include <stdio.h>
2
3  #define PI 3.1415926535
4  #define EPS 1e-6
5
6  int main()
7 {
8 int cases=0,i=0;
9 double year=0;
10 double area=0,x=0,y=0;
11
12 scanf ("%d",&cases);
13
14 for (i=1; i<=cases; i++)
15 {
16 scanf ("%lf %lf",&x,&y);
17 area = (x*x+y*y)*PI/2;
18
19 year = area / 50;
20 printf ("Property %d: This property will begin eroding in year %d.\n",
21 i,(int)(year-EPS)+1);
22 }
23
24 printf("END OF OUTPUT.\n");
25
26 return 0;
27 }

 

转载于:https://www.cnblogs.com/eavn/archive/2010/06/06/1752629.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值