Site icon 134340號小行星

UVA10678:The Grazing cow [JAVA]

black and silver laptop computer on table

Photo by Clément Hélardot on Unsplash

Online Judge

題目概要

解題技巧

以第一筆測資為例,兩根柱子距離 10 英尺(D),12 英尺的繩子(L),計算出 c = 5, a = 6, b = 根號11,3.14 * 6 * 根號11 => 3.3166247 * 3.1415926 * 6 取小數點後三位則四捨五入為 62.517

程式碼

import java.util.*;
import static java.lang.System.*;
public class Uva10678 {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int cases = sc.nextInt();
    while(cases-- > 0) {
    	final double PI = Math.PI;
    	int D = sc.nextInt(), L = sc.nextInt(); // D:柱子距離, L:繩子長度

    	double a = L/2.0, c = D/2.0; // 以雙精度浮點數計算
    	double b = Math.sqrt(Math.pow(a,2) - Math.pow(c,2)); // b^2 = a^2 - c^2

    	double result = PI * a * b; // 橢圓面積

    	System.out.printf("%.3f", result); // 取小數點後三位
    	System.out.println("");
    }
  }
};
Exit mobile version