๋ฌธ์
<๋ฌธ์ ์ค๋ช >
Leo๋ ์นดํซ์ ์ฌ๋ฌ ๊ฐ๋ค๊ฐ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์ค์์๋ ๋ ธ๋์์ผ๋ก ์น ํด์ ธ ์๊ณ ํ ๋๋ฆฌ 1์ค์ ๊ฐ์์ผ๋ก ์น ํด์ ธ ์๋ ๊ฒฉ์ ๋ชจ์ ์นดํซ์ ๋ดค์ต๋๋ค.
Leo๋ ์ง์ผ๋ก ๋์์์ ์๊น ๋ณธ ์นดํซ์ ๋ ธ๋์๊ณผ ๊ฐ์์ผ๋ก ์์น ๋ ๊ฒฉ์์ ๊ฐ์๋ ๊ธฐ์ตํ์ง๋ง, ์ ์ฒด ์นดํซ์ ํฌ๊ธฐ๋ ๊ธฐ์ตํ์ง ๋ชปํ์ต๋๋ค.
Leo๊ฐ ๋ณธ ์นดํซ์์ ๊ฐ์ ๊ฒฉ์์ ์ brown, ๋ ธ๋์ ๊ฒฉ์์ ์ yellow๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋ ์นดํซ์ ๊ฐ๋ก, ์ธ๋ก ํฌ๊ธฐ๋ฅผ ์์๋๋ก ๋ฐฐ์ด์ ๋ด์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
<์ ํ์ฌํญ>
- ๊ฐ์ ๊ฒฉ์์ ์ brown์ 8 ์ด์ 5,000 ์ดํ์ธ ์์ฐ์์ ๋๋ค.
- ๋ ธ๋์ ๊ฒฉ์์ ์ yellow๋ 1 ์ด์ 2,000,000 ์ดํ์ธ ์์ฐ์์ ๋๋ค.
- ์นดํซ์ ๊ฐ๋ก ๊ธธ์ด๋ ์ธ๋ก ๊ธธ์ด์ ๊ฐ๊ฑฐ๋, ์ธ๋ก ๊ธธ์ด๋ณด๋ค ๊น๋๋ค.
https://programmers.co.kr/learn/courses/30/lessons/42842
๋ฌธ์ ํ์ด
์นดํซ์ ๋ชจ๋ ๊ฐ๋ฅํ ๊ฐ๋ก, ์ธ๋ก ๊ธธ์ด๋ฅผ ํ์ํ๋ฉด์ ๊ฐ์ ๊ฒฉ์์ ๋ ธ๋์ ๊ฒฉ์์ ์๋ฅผ ๊ตฌํ๋ฉด ๋ฉ๋๋ค.
์ด๋ ์นดํซ์ ์ธ๋ก ๊ธธ์ด๋ ๊ฐ๋ก๊ธธ์ด๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ผ๋ฏ๋ก, ์นดํซ์ ๋ฉด์ ์ ์ ๊ณฑ๊ทผ ์ดํ์ ๋๋ค. ๋ํ ๋ ธ๋์ ๊ฒฉ์์ ๊ฐ์๊ฐ 1 ์ด์์ด๋ฏ๋ก ์ธ๋ก ๊ธธ์ด๋ 3 ์ด์์ ๋๋ค. (์ธ๋ก ๊ธธ์ด๊ฐ 2 ์ดํ๋ฉด ๋ ธ๋์ ๊ฒฉ์๊ฐ ์์ ์ ์์)
์กฐ๊ฑด์ ๋ง์กฑํ๋ ์ธ๋ก, ๊ฐ๋ก ๊ธธ์ด๋ฅผ ๊ตฌํ ๋ค์ ๊ฐ์ ๊ฒฉ์์ ๋ ธ๋์ ๊ฒฉ์์ ์๊ฐ ์ ๋ ฅ๊ณผ ์ผ์นํ๋ฉด ์ ๋ต์ผ๋ก ๋ฐํํฉ๋๋ค.
์์ค์ฝ๋
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
// ์นดํซ
#include <cmath>
#include <string>
#include <vector>
using namespace std;
vector<int> solution(int brown, int yellow) {
vector<int> answer;
int area = brown + yellow; // ์นดํซ์ ๋ฉด์
for (int height = 3; height <= sqrt(area); height++) {
if (area % height == 0) {
int width = area / height;
// ๊ฒฉ์์ ์ ํ์ธ
if (((width + height) * 2 - 4) == brown) {
answer.push_back(width);
answer.push_back(height);
break;
}
}
}
return answer;
}
|
cs |
๊ณต๋ถํ ๊ฒ์ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค. ์์ ํ ๋ถ๋ถ์ด ์๋ค๋ฉด ์๋ ค์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค :)
'Algorithm > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค / C++] ๊ธฐ๋ฅ๊ฐ๋ฐ ํ์ด (0) | 2020.08.13 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค / C++] ์ฃผ์๊ฐ๊ฒฉ ํ์ด (0) | 2020.08.04 |
[ํ๋ก๊ทธ๋๋จธ์ค / C++] ์ซ์ ์ผ๊ตฌ ํ์ด (0) | 2020.07.30 |
[ํ๋ก๊ทธ๋๋จธ์ค / C++] ์์ ์ฐพ๊ธฐ ํ์ด (11) | 2020.07.30 |
[ํ๋ก๊ทธ๋๋จธ์ค / c++] ์ด์ค์ฐ์ ์์ํ ํ์ด (0) | 2020.07.29 |