0_ch4n
기계쟁이\n개발자
0_ch4n
0chn.xxx@gmail.com @0ch._.n
전체 방문자
오늘
어제

공지사항

  • All (282)
    • 🖥 CS (21)
      • 네트워크 (12)
      • 운영체제 (3)
      • 자료구조 (2)
      • Web (4)
    • 🧠 Algorithm (185)
      • [C] BOJ (93)
      • [JAVA] Programmers (91)
    • 📚 Study (69)
      • HTML&CSS (19)
      • MySQL (11)
      • JAVA (22)
      • Servlet&JSP (8)
      • Thymeleaf (2)
      • Spring (5)
      • JPA (2)
    • 📖 Book (1)
    • 📃 Certification (6)
      • 정보처리기사 (6)

인기 글

최근 글

최근 댓글

태그

  • Programmers
  • 프로그래머스
  • 자바
  • til
  • CSS
  • 카카오
  • 코테
  • kakao
  • 코딩테스트
  • java

블로그 메뉴

  • 홈
  • 태그
  • 방명록

티스토리

hELLO · Designed By 정상우.
0_ch4n

기계쟁이\n개발자

[C언어] 3053번 - 택시 기하학
🧠 Algorithm/[C] BOJ

[C언어] 3053번 - 택시 기하학

2022. 4. 1. 12:31
반응형

문제

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

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

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

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

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

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

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

입력

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

출력

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

코드

#include <stdio.h>
#define _USE_MATH_DEFINES //M_PI 상수를 정의해주기 위하여 사용
#include <math.h>

//유클리드 기하학에서 원의 넓이는 pi * r^2
//택시 기하학에서 원의 넓이는 (root 2 * r) * (root 2 * r) = 2*r^2

int main(void) {
	
	int r = 0;
	double euclid = 0; //소수점의 차리가 크기 때문에 double형으로 선언한다
	double taxi = 0;

	scanf("%d", &r); //반지름 r 입력

	euclid = M_PI * pow(r, 2); //pi * r^2
	taxi = 2 * pow(r, 2); //2 * r^2

	printf("%.6f\n%.6f", euclid, taxi); //소수점 6번째 자리까지 출력
	
	return 0;
}
반응형
저작자표시 (새창열림)

'🧠 Algorithm > [C] BOJ' 카테고리의 다른 글

[C언어] 10872번 - 팩토리얼  (0) 2022.04.01
[C언어] 1002번 - 터렛  (0) 2022.04.01
[C언어] 4153번 - 직각삼각형  (0) 2022.04.01
[C언어] 3009번 - 네 번째 점  (0) 2022.04.01
[C언어] 1085번 - 직사각형에서 탈출  (0) 2022.04.01
    0_ch4n
    0_ch4n
    while(true) { study(); }

    티스토리툴바