POJ1005-I Think I Need a Houseboat

 

转载请注明出处:優YoU    http://user.qzone.qq.com/289065406/blog/1309404342

 

问题描述:

Fred Mapper 正在考虑在路易斯安那州购买一些土地来建他自己的房子。在研究土地的过程中,他发现,路易斯安那州的土地每年都会被密西西比河侵蚀掉 50 平方里。因为 Fred 希望在这个房子里度过余生,所以他需要知道他的那些土地是否会被侵蚀掉。

在做了更多的调查之后,Fred 发现这些土地是以半圆的形状被侵蚀的。这个半圆所对应的正圆的圆心在坐标原点 (0, 0), 坐标轴 x 轴将这个圆切成两半。在 x 轴下方的区域是河流。在第一年刚开始的时候,这个半圆的面积是 0.

 POJ1005-I Think I Need a Houseboat_第1张图片

红色为侵蚀方向蓝色为河水

 

问输入Fred Mapper家的坐标(X,Y),他家所在的位置什么时候被河水侵蚀。

 

解题思路:

Fred Mapper的家(X,Y)到侵蚀中心(0,0)的距离就是侵蚀半径R

那么Area = 1/2*pi*R 就是侵蚀到Fred Mapper家时的侵蚀面积

而侵蚀速度为每年50

那么侵蚀到Fred Mapper家需要 RestYear = Area/50 = pi*R/100 年

又要求从第一年开始计算,最后一年不够一年按一年计算,那么RestYear+1取整就可以了。

 

 

//Memory Time
//260K   0MS 

#include<iostream>
using namespace std;

const double pi=3.141592654;

int main(void)
{
	int test;
	cin>>test;
	for(int t=1;t<=test;t++)
	{
		double x,y;
		cin>>x>>y;

		double Area=pi*(x*x+y*y);
		int RestYear=(int)(Area/100.0+1.0);
		cout<<"Property "<<t<<": This property will begin eroding in year "<<RestYear<<'.'<<endl;
	}
	cout<<"END OF OUTPUT."<<endl;
	return 0;
}


 

你可能感兴趣的:(POJ1005-I Think I Need a Houseboat)