• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
封........
博客园    首页    新随笔    联系   管理    订阅  订阅
ACM-1005

这道题也很简单,就是计算圆的面积。

在每一年土地都会被腐蚀,腐蚀的速度是每一年50平方。计算给一点,这点将在哪一年被腐蚀。

C++代码:

View Code
 1 #include <iostream>
2 #include <math.h>
3 #include <vector>
4 #define IP 3.1415926
5 using namespace std;
6
7 int main ()
8 {
9 int n;
10 vector<int> m_num;//装下需要多少年
11 while ( cin>>n )
12 {
13 double m_x,m_y;
14 while ( n-- && cin>>m_x>>m_y )//x,y的坐标
15 {
16 double m_sum=IP*(m_x*m_x+m_y*m_y)/(double)2;//计算面积
17 double m = m_sum/(double)50;//通过除,得到要多少年
18 int m_tem=m;//有可能还未到整年
19 if( m - (double)m_tem>1e-6)m_tem++;//多加一年
20 m_num.push_back(m_tem);//保存
21 }
22 for ( vector<int>::size_type i=0;i!=m_num.size();++i)//输出
23 {
24 cout<<"Property "<<i+1<<": This property will begin eroding in year "<<m_num[i]<<"."<<endl;
25 }
26 cout<<"END OF OUTPUT."<<endl;
27 m_num.clear();
28 }
29
30 return 0;
31 }

 java代码:

View Code
 1 import java.io.*;
2 import java.util.*;
3 import java.lang.Math;
4
5 public class six
6 {
7 public static void main(String args[])throws Exception
8 {
9 int n;
10 Scanner in=new Scanner(System.in);
11 Vector<Integer> m_num=new Vector<Integer>();
12
13 while(in.hasNext())
14 {
15 n=in.nextInt();
16 double m_x,m_y;
17 while((n--)>0&&in.hasNext())
18 {
19 m_x=in.nextDouble();
20 m_y=in.nextDouble();
21 double m_sum=Math.PI*(m_x*m_x+m_y*m_y)/2;
22 m_sum=m_sum/(double)50;
23 int m=(int)m_sum;
24 if((m_sum-m)>1e-6)m++;
25 Integer m_p=new Integer(m);
26 m_num.add(m_p);
27 }
28 for(int i=0;i<m_num.size();++i)
29 {
30 System.out.println("Property "+(i+1)+": This property will begin eroding in year "+m_num.get(i)+".");
31 }
32 System.out.println("END OF OUTPUT.");
33 }
34 }
35 }

可能很多地方与C++类似,但是为了学java,就这样也挺好的。

posted on 2011-12-13 17:22  琴&天  阅读(272)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3