๋ฌธ์
19์ธ๊ธฐ ๋ ์ผ ์ํ์ ํค๋ฅด๋ง ๋ฏผ์ฝํ์คํค๋ ๋น์ ํด๋ฆฌ๋ ๊ธฐํํ ์ค ํ์ ๊ธฐํํ์ ๊ณ ์ํ๋ค.
ํ์ ๊ธฐํํ์์ ๋ ์ T1(x1,y1), T2(x2,y2) ์ฌ์ด์ ๊ฑฐ๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ์ด ๊ตฌํ ์ ์๋ค.
D(T1,T2) = |x1-x2| + |y1-y2|
๋ ์ ์ฌ์ด์ ๊ฑฐ๋ฆฌ๋ฅผ ์ ์ธํ ๋๋จธ์ง ์ ์๋ ์ ํด๋ฆฌ๋ ๊ธฐํํ์์์ ์ ์์ ๊ฐ๋ค.
๋ฐ๋ผ์ ํ์ ๊ธฐํํ์์ ์์ ์ ์๋ ์ ํด๋ฆฌ๋ ๊ธฐํํ์์ ์์ ์ ์์ ๊ฐ๋ค.
์: ํ๋ฉด ์์ ์ด๋ค ์ ์์ ๊ฑฐ๋ฆฌ๊ฐ ์ผ์ ํ ์ ๋ค์ ์งํฉ
๋ฐ์ง๋ฆ R์ด ์ฃผ์ด์ก์ ๋, ์ ํด๋ฆฌ๋ ๊ธฐํํ์์ ์์ ๋์ด์, ํ์ ๊ธฐํํ์์ ์์ ๋์ด๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ๋ฐ์ง๋ฆ R์ด ์ฃผ์ด์ง๋ค. R์ 10,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค์๋ ์ ํด๋ฆฌ๋ ๊ธฐํํ์์ ๋ฐ์ง๋ฆ์ด R์ธ ์์ ๋์ด๋ฅผ, ๋์งธ ์ค์๋ ํ์ ๊ธฐํํ์์ ๋ฐ์ง๋ฆ์ด R์ธ ์์ ๋์ด๋ฅผ ์ถ๋ ฅํ๋ค. ์ ๋ต๊ณผ์ ์ค์ฐจ๋ 0.0001๊น์ง ํ์ฉํ๋ค.
ํ์ด
01. ํ์ ๊ธฐํํ์์์ ์
๋จผ์ ํ์ ๊ธฐํํ์ ๋ํด ์์์ผ ํ๋ค. ํ์ ๊ธฐํํ์์์ ์ขํํ๋ฉด์ ๋๋ก๋ก ์๊ฐํ ์ ์๋๋ฐ, ๋๊ฐ์ ์ผ๋ก ๋ฐ๋ก ๊ฐ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํ๋ฉฐ ๊ฐ๋ก์ ์ธ๋ก๋ก๋ง ๊ฐ ์ ์๋ค.
๊ทธ๋ ๋ค๋ฉด ํ์ ๊ธฐํํ์์ ์์ด๋ ๋ฌด์์ธ๊ฐ? ์ ํด๋ฆฌ๋ ๊ธฐํํ์์ ์์ "ํ ์ ์์ ๊ฐ์ ๊ฑฐ๋ฆฌ์ ์๋ ์ ์ ์งํฉ"์ผ๋ก ํํ๋๋ค. ๊ทธ๋ฌ๋ ํ์ ๊ธฐํํ์์๋ ๊ฑฐ๋ฆฌ์ ์ ์๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ์์ ๋ชจ์๋ ๋ค๋ฅด๊ฒ ๋ํ๋๋ค.
์กฐ๊ธ ์ด์ํ๊ฒ ๋ณด์ผ ์ ์์ผ๋ ๋นจ๊ฐ์ ์ ๋ค๊ณผ ํ๋์ ์ ๊ฐ์ ๊ฑฐ๋ฆฌ๊ฐ ๋ชจ๋ 2๋ก ๋์ผํ ๊ฒ์ ํ์ธํ ์ ์๋ค.
( ์ : โฃx−aโฃ+โฃy−bโฃ=d )
ํ์ ๊ธฐํํ์์์ ๋ฐ์ง๋ฆ์ด R์ธ ์์ ๋์ด๋ ๋ ๋๊ฐ์ ์ ๊ธธ์ด๊ฐ 2R์ธ ๋ง๋ฆ๋ชจ์ ๋์ด์ ๊ฐ๋ค. -> 2R^2
02. C++์์ PI๊ฐ ์ฌ์ฉํ๊ธฐ
PI ์์๊ฐ์ ์ฃผ๋ ๋ฐฉ๋ฒ๋ ์์ง๋ง ๋งค๋ฒ ์ธํฐ๋ท์ PI๊ฐ์ ๊ฒ์ํ๊ธฐ ๊ท์ฐฎ๊ธฐ ๋๋ฌธ์ ํค๋์ ์ ์๋์ด ์๋ PI ๊ฐ์ ์ฌ์ฉํ์๋ค.
<cmath> ํค๋์ M_PI๊ฐ์ด ์ ์๋์ด ์์ผ๋ฉฐ, ์ ํํ PI๊ฐ ์ฌ์ฉ์ ์ํด์๋ ์์ #define _USE_MATH_DEFINES๋ฅผ ์ ์ธํด์ผ ํ๋ค.
#define _USE_MATH_DEFINES
#include <cmath> // M_PI
cout << r*r*M_PI << "\n";;
03. ์์์ ์๋ฆฌ ๊ณ ์
fixed์ precision(์ํ๋ ์์์ ์๋ฆฟ์)๋ฅผ ํตํด ์ถ๋ ฅํ๋ ์์์ ์๋ฆฌ๋ฅผ ๊ณ ์ ํ ์ ์๋ค.
cout << fixed;
cout.precision(6);
#define _USE_MATH_DEFINES
#include <iostream>
#include <cmath> // PI
using namespace std;
int main() {
double r;
cin >> r;
cout << fixed;
cout.precision(6);
cout << r*r*M_PI << "\n";;
cout << r*r*2 << "\n";
}
'โจ Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค/C++] 10872๋ฒ : ํฉํ ๋ฆฌ์ผ(์ฌ๊ท) (0) | 2021.08.14 |
---|---|
[๋ฐฑ์ค/C++] 1002๋ฒ : ํฐ๋ (๋ ์์ ๊ต์ ์ (0) | 2021.08.14 |
[๋ฐฑ์ค/C++] 4153๋ฒ : ์ง์ฌ๊ฐํ (0) | 2021.08.13 |
[๋ฐฑ์ค/C++] 3009 : ๋ค ๋ฒ์งธ ์ (0) | 2021.08.12 |
[๋ฐฑ์ค/C++] 1085๋ฒ : ์ง์ฌ๊ฐํ์์ ํ์ถ (0) | 2021.08.12 |
๋๊ธ