HDOJCuts the cake

来源:互联网 发布:汽车金融软件 编辑:程序博客网 时间:2024/06/16 16:44

Cuts the cake

Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 3890    Accepted Submission(s): 2476


Problem Description
Ice cream took a bronze medal in the Beijing match. Liu sir is very very happy. So he buys a cake for them. kiki is a child who likes eating, so the task of cuting cake was given to kiki. kiki is also a mischievous child. She wants to cut the cake in a different way. This is introduced in the figure below.

But there is a difficult problem.which is how to make each preson get equally many cake. kiki is not good at match, so she wants you help her solve this problem.
 

Input
Input contains multiple test cases. Each line is a case. Each case contains only one integer R which is the radius. The input is terminated with a R of 0.
 

Output
For each test case, you should printf two numbers r2 and r1 in a line, accurate up to 3 decimal places, separate them by one space.
 

Sample Input
10155250
 

Sample Output
5.774 8.1658.660 12.2472.887 4.08214.434 20.412
 
import java.util.Scanner;public class Main{    private static Scanner scanner;    public static void main(String[] args) {        scanner = new Scanner(System.in);        while(scanner.hasNext()){            int R = scanner.nextInt();            if(R == 0){                break;            }            double s = Math.PI*R*R;            double r1 = Math.sqrt((2.0/3*s)/Math.PI);            double r2 = Math.sqrt((1.0/3*s)/Math.PI);            System.out.printf("%.3f %.3f",r2,r1);            System.out.println();        }    }}//            WA://            double r1 = Math.sqrt(2.0/3*R*R);//            double r2 = Math.sqrt(R*R/3.0);//            不能直接推导公式(不能把PI约去)

原创粉丝点击