๋ฌธ์ ์ค๋ช
https://school.programmers.co.kr/learn/courses/30/lessons/12940
๋ ์๋ฅผ ์ ๋ ฅ๋ฐ์ ๋ ์์ ์ต๋๊ณต์ฝ์์ ์ต์๊ณต๋ฐฐ์๋ฅผ ๋ฐํํ๋ ํจ์, solution์ ์์ฑํด ๋ณด์ธ์. ๋ฐฐ์ด์ ๋งจ ์์ ์ต๋๊ณต์ฝ์, ๊ทธ๋ค์ ์ต์๊ณต๋ฐฐ์๋ฅผ ๋ฃ์ด ๋ฐํํ๋ฉด ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด ๋ ์ 3, 12์ ์ต๋๊ณต์ฝ์๋ 3, ์ต์๊ณต๋ฐฐ์๋ 12์ด๋ฏ๋ก solution(3, 12)๋ [3, 12]๋ฅผ ๋ฐํํด์ผ ํฉ๋๋ค.
์ ํ ์ฌํญ
- ๋ ์๋ 1 ์ด์ 1,000,000 ์ดํ์ ์์ฐ์์ ๋๋ค.
์ ์ถ๋ ฅ ์
n | m | return |
3 | 12 | [3, 12] |
2 | 5 | [1, 10] |
์ ์ถ๋ ฅ ์ ์ค๋ช
์ ์ถ๋ ฅ ์ #1
- ์์ ์ค๋ช ๊ณผ ๊ฐ์ต๋๋ค.
์ ์ถ๋ ฅ ์ #2
- ์์ฐ์ 2์ 5์ ์ต๋๊ณต์ฝ์๋ 1, ์ต์๊ณต๋ฐฐ์๋ 10์ด๋ฏ๋ก [1, 10]์ ๋ฆฌํดํด์ผ ํฉ๋๋ค.
๋ด๊ฐ ์์ฑํ ์ฝ๋
class Solution {
public int[] solution(int n, int m) {
int[] answer = new int[2];
int max = 0;
for (int i =1; i <= n && i <= m; i++) {
if (n % i == 0 && m % i == 0) {
max = i;
}
}
answer[0] = max;
answer[1] = (n * m) / max;
return answer;
}
}
์ฝ๋ ์ค๋ช
- int[ ] answer = new int[2] : ๊ธธ์ด๊ฐ 2์ธ ์ ์ ๋ฐฐ์ด answer๋ฅผ ์์ฑํ๋ค.
- int max = 0 : ์ต๋๊ณต์ฝ์๋ฅผ ์ ์ฅํ ๋ณ์ max๋ฅผ 0์ผ๋ก ์ด๊ธฐํํ๋ค.
- for (int i = 1; i <= n && i <= m; i++) { } : for๋ฌธ์ ์ฌ์ฉํด์ i๊ฐ 1๋ถํฐ n๊ณผ m ์ค ์์ ๊ฐ๊น์ง ๋ฐ๋ณตํ๋ค.
- if (n % i == 0 && m % i == 0) { max = i } : if๋ฌธ์ ์ฌ์ฉํด์ n๊ณผ m์ i๋ก ๋๋์ด ๋จ์ด์ง๋ ๊ฒฝ์ฐ(i๊ฐ n๊ณผm์ ๊ณต์ฝ์์ธ ๊ฒฝ์ฐ) ํ์ฌ i์ ๊ฐ์ ๋ณ์ max์ ์ ์ฅํ๋ค.
- answer[0] = max : answer ๋ฐฐ์ด์ ์ฒซ ๋ฒ์งธ ์์์ ์ต๋๊ณต์ฝ์ max๋ฅผ ์ ์ฅํ๋ค.
- answer[1] = (n * m) / max : ์ต์๊ณต๋ฐฐ์๋ฅผ ๊ณ์ฐํด์ answer ๋ฐฐ์ด์ ๋ ๋ฒ์งธ ์์์ ์ ์ฅํ๋ค.
'ํ๋ก๊ทธ๋๋จธ์ค > ์๊ณ ๋ฆฌ์ฆ ํ์ด(Java)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค_์ด์ํ ๋ฌธ์ ๋ง๋ค๊ธฐ (0) | 2024.11.26 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค_3์ง๋ฒ ๋ค์ง๊ธฐ (0) | 2024.11.25 |
ํ๋ก๊ทธ๋๋จธ์ค_์ง์ฌ๊ฐํ ๋ณ์ฐ๊ธฐ (0) | 2024.11.24 |
ํ๋ก๊ทธ๋๋จธ์ค_ํ๋ ฌ์ ๋ง์ (1) | 2024.11.22 |
ํ๋ก๊ทธ๋๋จธ์ค_๋ฌธ์์ด ๋ค๋ฃจ๊ธฐ ๊ธฐ๋ณธ (0) | 2024.11.21 |