CS/알고리즘

백준 3053번 택시 기하학 파이썬 풀이

happy_life 2022. 2. 6. 23:13

 

 

 

 

문제

19세기 독일 수학자 헤르만 민코프스키는 비유클리드 기하학 중 택시 기하학을 고안했다.

택시 기하학에서 두 점 T1(x1,y1), T2(x2,y2) 사이의 거리는 다음과 같이 구할 수 있다.

D(T1,T2) = |x1-x2| + |y1-y2|

두 점 사이의 거리를 제외한 나머지 정의는 유클리드 기하학에서의 정의와 같다.

따라서 택시 기하학에서 원의 정의는 유클리드 기하학에서 원의 정의와 같다.

원: 평면 상의 어떤 점에서 거리가 일정한 점들의 집합

반지름 R이 주어졌을 때, 유클리드 기하학에서 원의 넓이와, 택시 기하학에서 원의 넓이를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 반지름 R이 주어진다. R은 10,000보다 작거나 같은 자연수이다.

출력

첫째 줄에는 유클리드 기하학에서 반지름이 R인 원의 넓이를, 둘째 줄에는 택시 기하학에서 반지름이 R인 원의 넓이를 출력한다. 정답과의 오차는 0.0001까지 허용한다.

 

 

 

정답 코드

 

 

 

풀이

import math

R = int(input())

print("{:.6f}".format(math.pi*R*R))
print("{:.6f}".format((2*R)**2//2))

 

유클리드기하학에서 점, 선, 면, 거리, 각 등은 일반적으로 우리가 잘 알고 있는 것들이다. 이 중에서 두 점 사이의 거리는 직각삼각형에 관한 피타고라스의 정리를 이용하여 구할 수 있다. 즉, 그림과 같이 좌표평면 위의 두 점 A(a,b)와 B(c,d) 사이의 거리는 다음과 같다.

이제 바둑판 모양의 도로망을 가진 도시의 점 A에서 택시를 타고 점 B로 가는 경우를 생각해 보자. 오른쪽 그림에서와 같이 두 점 사이에 건물이 있으므로 택시를 타고 A에서 B로 가려면 직선으로 곧바로 가지 못하고 점 A에서 점 C를 거쳐 점 B로 가야 한다. 즉, 다음과 같이 거리를 측정하는 것을 ‘택시거리(Taxi-metric)’라고 한다.

그리고 xy-평면에 유클리드거리가 적용되면 ‘유클리드 평면’, 택시거리가 적용되면 ‘택시평면’이라고 한다. 그런데 실생활에서 두 지점 사이의 거리는 택시거리로 측정하는 것이 더 현실적이며, 택시평면 위에서는 유클리드기하학의 내용들이 옳지 않다. 즉, 택시기하학은 비유클리드기하학인 것이다.

[네이버 지식백과] 택시기하학 - 수학의 흥미 (수학산책, 이광연)

 

 

택시 평면에서의 원의 모양?

반지름의 길이가 택시거리로 3인 택시원

위의 경우와 같이 택시기하학과 유클리드기하학은 많은 차이점이 있다. 그 중에서 두 기하학에서 서로 확연이 다른 것은 원에 관한 내용일 것이다. 사실 우리가 알고 있고 실생활에 사용하고 있는 원은 유클리드거리에 의한 원이다. 실제로 원의 정의는 ‘한 정점에서 일정한 거리에 있는 점의 집합’으로 이 정점을 중심, 일정한 거리를 원의 반지름이라고 한다. 이 원의 정의를 그대로 택시평면 위에 옮겨 놓아도 우리가 알고 있는 모양의 원이 될까?

중심이 (0,0)이고 반지름의 길이가 3인 택시원을 xy-평면 위에 나타내보자. 반지름의 길이가 3이므로 택시평면 위에서 원은 |x|+|y|=3을 만족시키는 점 (x,y)의 집합이 된다. 그림은 이 식을 만족시키는 점의 집합을 택시평면 위에 나타낸 것으로 택시원은 우리가 알고 있는 원이 아니고 두 대각선의 길이가 같은 마름모 모양의 정사각형이다.

택시원은 두 대각선이 좌표축과 평행한 유클리드평면에서의 정사각형과 같으며, 원점 이외의 점을 중심으로 하여도 마찬가지로 택시원은 정사각형 모양이 된다. 이를테면 중심이 (2,1)이고 반지름의 길이가 3인 택시원은 |x-2|+|y-1|=3으로 나타낼 수 있고 이는 위의 도형을 x축으로 2만큼 y축으로 1만큼 평행이동 시킨 도형이 된다.

[네이버 지식백과] 택시기하학 - 수학의 흥미 (수학산책, 이광연)

 

 

 

 

 

유클리드기하학에서의 원(왼쪽), 택시기하학에서의 원(오른쪽)