sliver__

백준 - 택시기하학(3053) 본문

CS/알고리즘

백준 - 택시기하학(3053)

sliver__ 2021. 11. 18. 20:07
728x90

https://www.acmicpc.net/problem/3053

 

3053번: 택시 기하학

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

www.acmicpc.net

 

택시 기하학

 

유클리드 원의 넓이와 택시 기하학에서 정의된 원의 넓이를 구하는 문제이다.

유클리드의 원의 넓이는 \(\pi r^2\) 이다.

택시 기하학의 원의 넓이는 \(2r^2\) 이다.

 

이대로 출력을 하는데 std::cout api의 fixed, precision을 알아야

소수점 자리 밑의 수를 조절할 수 있다.

 

기본적으로 precision은 정수자리 + 소수점자리를 합한 자리수를 지정한다.

ex) cout.precision(6) 이라면 13.3333, 1.55555, 23,1234, 444.444, 5555.55, 66666.6

으로 표현될 것이다.

 

여기서 cout << fixed;를 선언해주면 

소수점 밑의 자리수만 조절이 가능하다.

cout << fixed; 

cout.precision(6) 이라면 13.333333, 123.333333 ... 이 가능해질 것이다.

 

제출한 코드는 아래와 같습니다.

 

#define _USE_MATH_DEFINES
#include <iostream>
#include <cmath>
using namespace std;

int main()
{
	double r;
	cin >> r;
	cout << fixed;
	cout.precision(6);
	cout << r * r * M_PI << endl;
	cout << 2 * r * r;
}
728x90

'CS > 알고리즘' 카테고리의 다른 글

백준 - 피보나치 수 5  (0) 2021.11.18
백준 - 팩토리얼(10872)  (0) 2021.11.18
백준 - 네 번째 점(3009)  (0) 2021.11.18
백준 - 직각삼각형(4153)  (0) 2021.11.18
백준 - 직사각형에서 탈출(1085)  (0) 2021.11.18
Comments