问题描述
佛瑞德最近正在考虑在路易斯安那洲买一片土地来盖一栋房子.在进行调查研究土地的过程中佛瑞德发现,路易斯安那洲的土地由于密西西比河的侵蚀会以每年50平方英里的速度缩减.佛瑞德计划后半生都在该地度过,所以他不希望在自己的有生之年房屋受到河水的侵蚀.现在他需要知道自己是否会受到河水的侵蚀.
在做了更多的调查之后,佛瑞德得知这里的土地沿河岸以半圆形方式侵蚀,这个半圆以(0,0)为圆心的,被X轴分成上下两部分,位于X轴下边的是河水,上面是河岸.在第一年开始的时候这个半圆范围为0,也就是说河岸未被河水侵蚀.(半圆如下图所示)
输入描述
第一行的一个正整数N指出下边有多少组数据需要计算.下边N行,每行包含两个实数X和Y,指出佛瑞德考虑的房子以(0,0)为原点的坐标系内的位置.以英里为单位.Y为非负数.
输出描述
计算在X,Y位置佛瑞德的房子在第几年会被河水侵蚀.与输入数据相对应每行以如下形式输出你的计算结果:“Property N: This property will begin eroding in year Z.”, 其中N为第N组数据,Z为你计算出的开始侵蚀的年数.在最后输出一句“END OF OUTPUT.”,表示计算结束.
样例输入
2 1.0 1.0 25.0 0.0
样例输出
Property 1: This property will begin eroding in year 1. Property 2: This property will begin eroding in year 20. END OF OUTPUT.
来源
Mid-Atlantic 2001
提示
-
房屋的位置不会正好在半圆边界上,要不在内,要不在外。
-
你所提交的程序计算输出会由系统自动判断。你的结果要和输出要求精确匹配,字母大小写、标点符号和空格 。包括最后一行的语句也要精确匹配。
-
所有给定数据都以英里为单位。
-
#include <stdio.h> int main() { int N, i; float x, y, year; scanf("%d", &N); for (i = 0; i < N; i++) { scanf("%f %f", &x, &y); for (year = 1; year * 50 * 2 / 3.1415926 < x * x + y * y; year++); printf("Property %d: This property will begin eroding in year %.0f.\n", i + 1, year); } printf("END OF OUTPUT.\n"); return 0; }