-
[백준 - 3053번] 택시 기하학 - Java //Wello Horld//Algorithm/BOJ(Baekjoon Online Judge) 2019. 7. 26. 16:27
이번에는 BOJ의 3053번 문제 "택시 기하학"을 풀어보도록 하자
문제는 간단하나 용어들이 생소할 수 있다. 유클리드 기하학에서 반지름이 R인 원의 넒이라고 함은,
A = PI() * R^2
이다. 그리고 이 문제에서 나오는 택시 기하학에서 반지름이 R인 원의 넓이라고 함은,
D(T1,T2) = |x1-x2| + |y1-y2|
의 계산을 통해 얻어지는 도형의 넓이라고 생각하면 된다. 이해하기 쉽게 도형을 보면서 설명해보자면,
위 그림과 같이 반지름이 1인 원과 좌표(1,0), (0,1), (-1,0), (0,-1)를 꼭지점으로 하는 사각형이 있다고 하자. 여기에서 유클리드 기하학에서 원의 넓이라고 함은 파란색원의 넓이이다. 그리고 이문제에서 나오는 택시기하학에서의 원의 넓이라고 함은 빨간 사각형의 넓이이다.
이러한 사실을 유의해서 문제를 풀어주면 된다. 성공한 코든는 아래와 같다.
import java.io.*; import java.util.*; public class sample { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); int R = Integer.parseInt(br.readLine()); System.out.printf("%.6f\n", (double) R * R * 3.1415926535897932384626433); System.out.printf("%.6f\n", (double) 2 * R * R); bw.flush(); br.close(); bw.close(); } }
문제 : https://www.acmicpc.net/problem/3053
'Algorithm > BOJ(Baekjoon Online Judge)' 카테고리의 다른 글
[백준 - 7572번] 간지(干支) - Java //Wello Horld// (0) 2019.07.26 [백준 - 16938번] 캠프 준비 - Java //Wello Horld// (0) 2019.07.26 [백준 - 1927번] 최소 힙 - Java //Wello Horld// (0) 2019.07.26 [백준 - 7579번] 앱 - Java //Wello Horld// (0) 2019.07.26 [백준 - 11653번] 소인수분해 - Java //Wello Horld// (0) 2019.07.26