โฐ๋ฌธ์
๋จธ์ฑ์ด๋ค ํผ์๊ฐ๊ฒ๋ ํผ์๋ฅผ ์ฌ์ฏ ์กฐ๊ฐ์ผ๋ก ์๋ผ ์ค๋๋ค. ํผ์๋ฅผ ๋๋ ๋จน์ ์ฌ๋์ ์ n์ด ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, n๋ช ์ด ์ฃผ๋ฌธํ ํผ์๋ฅผ ๋จ๊ธฐ์ง ์๊ณ ๋ชจ๋ ๊ฐ์ ์์ ํผ์ ์กฐ๊ฐ์ ๋จน์ด์ผ ํ๋ค๋ฉด ์ต์ ๋ช ํ์ ์์ผ์ผ ํ๋์ง๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด๋ณด์ธ์.
์ ํ์ฌํญ
1 ≤ n ≤ 100
์ ์ถ๋ ฅ ์
n | result |
6 | 1 |
10 | 5 |
4 | 2 |
์ ์ถ๋ ฅ ์ ์ค๋ช
์ ์ถ๋ ฅ ์ #1
- 6๋ช ์ด ๋ชจ๋ ๊ฐ์ ์์ ๋จน๊ธฐ ์ํด ํ ํ์ ์์ผ์ผ ํผ์๊ฐ 6์กฐ๊ฐ์ผ๋ก ๋ชจ๋ ํ ์กฐ๊ฐ์ฉ ๋จน์ ์ ์์ต๋๋ค.
์ ์ถ๋ ฅ ์ #2
- 10๋ช ์ด ๋ชจ๋ ๊ฐ์ ์์ ๋จน๊ธฐ ์ํด ์ต์ 5ํ์ ์์ผ์ผ ํผ์๊ฐ 30์กฐ๊ฐ์ผ๋ก ๋ชจ๋ ์ธ ์กฐ๊ฐ์ฉ ๋จน์ ์ ์์ต๋๋ค.
์ ์ถ๋ ฅ ์ #3
- 4๋ช ์ด ๋ชจ๋ ๊ฐ์ ์์ ๋จน๊ธฐ ์ํด ์ต์ 2ํ์ ์ํค๋ฉด ํผ์๊ฐ 12์กฐ๊ฐ์ผ๋ก ๋ชจ๋ ์ธ ์กฐ๊ฐ์ฉ ๋จน์ ์ ์์ต๋๋ค.
๐กํ์ด
์ฒ์ ์์ฑ ์ฝ๋
class Solution {
public int solution(int n) {
int answer = 0;
int min = (n < 6) ? n : 6;
if(n % 6 == 0){
answer = n / 6;
}else{
for(int i=1; i<min; i++){
if(n%i == 0 && 6%i == 0){
answer = (n / i);
}else{
answer = n*6/6;
}
}
}
return answer;
}
}
์ฒ์ ์์ฑํ๋ ์ฝ๋์ด๋ค.
์ฒ์์ '์ต์ ๋ช ํ์ ์์ผ์ผํ ๊น' ๋ผ๋ ๋ง์ ๊ฝํ๋์ง ๋จธ๋ฆฟ์์ ์ต์๊ณต๋ฐฐ์ ๋ฐ์ ์์๋ค.
๊ทธ๋ฌ๋ ์ต์๊ณต๋ฐฐ์๋ฅผ ๊ตฌํด์ ์ฝ๋๋ฅผ ๊ตฌํํ๋ ค ํ ์๋ก ์ฝ๋๋ ์ฝ๋๋๋ก ๊ธธ์ด์ง๊ณ , ๋ ๊ฒ ๊ฐ์๋ฐ ๋์ง ์๋ ์ผ๋ง ๋ฐ๋ณต๋๋ค.
๊ทธ๋์ ์ ์ฒด ์ด๊ธฐํ๋ฅผ ์ํจ ํ ์ฒ์๋ถํฐ ๋ค์ ์๊ฐํด๋ดค๋ค. ์ ๋ ๋ณต์กํ์ง๋ ์ด๋ ค์ธ ๊ฒ ๊ฐ์ง ์์ ๋ฌธ์ ์ผ ๊ฒ์ด๋ผ ์๊ฐํ๋ค.
โญ์ ์ถ ์ฝ๋
class Solution {
public int solution(int n) {
int answer = 1;
while( (6 * answer)%n != 0 ){
answer++;
}
return answer;
}
}
ํผ์ ํ์ ์๋ฅผ answer์ด๋ผ ํ๊ณ , ํ ํ์ 6์กฐ๊ฐ ์ด๋ฏ๋ก " 6*answer ÷ ์ฌ๋ ์ "์ ๋๋จธ์ง ๊ฐ์ด 0์ด ์๋๋ผ๋ฉด answer++์ ํ์ฌ ํผ์๊ฐ ํ ํ ์ฆ๊ฐํ๋๋ก ํ๊ณ , ๋๋จธ์ง ๊ฐ์ด 0์ด ๋๋ฉด answer์ return ํ๋๋ก ์ฝ๋๋ฅผ ๋ณ๊ฒฝํ๋ค.
์ด๋ ๊ฒ ๊ฐ๋จํ ์ฝ๋๋ฅผ ๋๋ฌด ๋ณต์กํ๊ฒ ์๊ฐํ๋ ค ํ๋ ๊ฒ ๊ฐ๋ค. ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๋จ๊ณ๋ถํฐ ์๊ฐํด๋ณด๋ ์์ธ๊ฐ ํ์ํ ๊ฒ ๊ฐ๋ค.
'๐ Algorithm > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Programmers] ๋ชจ์ค๋ถํธ(1)(์๋ฐ) (0) | 2023.03.27 |
---|---|
[Programmers] ๋ฐ๋ณต๋ฌธ ์ถ๋ ฅํ๊ธฐ(์๋ฐ) (0) | 2023.03.25 |
[Programmers] ์ต๋น๊ฐ ๊ตฌํ๊ธฐ(์๋ฐ) (0) | 2023.03.20 |
[Programmers] ๋ถ์์ ๋ง์ (์๋ฐ) (0) | 2023.03.20 |
[Programmers] ๋ ์์ ๋๋์ (์๋ฐ) (2) | 2023.03.17 |