Tags
- SpringBoot
- Dynamic Programming
- dfs
- DP
- ์ํ
- ์ ์๋ก
- ๊ทธ๋ํ ์ด๋ก
- ์๋ฎฌ๋ ์ด์
- stack
- ๋๋น ์ฐ์ ํ์
- Python
- ์๋ฃ๊ตฌ์กฐ
- LV2
- ๋ฐฑํธ๋ํน
- PGM
- CodingTest
- queue
- sort
- Java
- ์ ๋ ฌ
- Brute Force Algorithm
- ๊น์ด ์ฐ์ ํ์
- ๋ฌธ์์ด
- Study
- BFS
- BOJ
- ๊ตฌํ
- greedy
- ๊ต์ฌ
- ๊ทธ๋ํ ํ์
Archives
๊ธฐ๋ก๋ฐฉ
Lv.2 : k์ง์์์ ์์ ๊ฐ์ ๊ตฌํ๊ธฐ ๋ณธ๋ฌธ
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- ์ ๋ ฅ๋ฐ์ ์ ์ n์ k์ง์๋ก ๋ณํ ๋ค 0์ผ๋ก ๊ตฌ๋ถํด ๋์จ ๊ฐ๋ค ์ค ์์์ ๊ฐ์๋ฅผ ๋ฐํํ๋ค.
๐ธ ๋ฌธ์ ํ์ด ๐ธ
- ๋จผ์ k์ง์ ๋ณํ ๋ฐ 0์ผ๋ก ์๋ผ ๋ฌธ์์ด ๋ฐฐ์ด์ ์์ฑํ๋ค.
- ๋ฐฐ์ด์ ๋ฌธ์ ํ๋์ฉ ์์์ธ์ง ํ๋ณํ๋ค.
๐ธ ์ฝ๋ ๐ธ
class Solution {
public int solution(int n, int k) {
// ์ง์ ๋ณํ & 0์ผ๋ก ๊ตฌ๋ถ
String[] ss = Integer.toString(n, k).split("0+");
// ์์ ํ๋ณ
int answer = 0;
for (String s : ss) {
boolean flag = true;
Long num = Long.parseLong(s);
if (num < 2) continue;
int max = (int)Math.sqrt(num);
for (int i = 2; i <= max; i++) {
if (num % i == 0) {
flag = false;
break;
}
}
if (flag) answer++;
}
return answer;
}
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- Integer.toString()์ ํตํด 3~10์ง์ ๋ณํ์ ์ฝ๊ฒ ์ํํ ์ ์๋ค.
- String.split()์ผ๋ก ๋ฌธ์ ์กฐ๊ฑด์ ๋ฐ๋ผ 0์ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ๋ง๋๋๋ฐ, ์ค๋ณต๋๋ 0๋ ํฌํจํ๊ธฐ ์ํด ์ ๊ทํํ์์ '+'๋ฅผ ๋ถ์ธ๋ค.
- ๊ฐ ๋ฌธ์์ด์ ์์ ํ๋ณ์ ์ํด ์ ์๋ก ๋ณํ ๋ค, 2๋ถํฐ ์ ์์ ์ ๊ณฑ๊ทผ๊น์ง ๋๋๋ ๊ฐ์ด ์๋์ง ํ์ธํ๋ค.
- ๋ฌธ์์ด์ ์ ์๋ก ๋ณํํ ๋ Integer์ ๋ฒ์๋ฅผ ์ด๊ณผํ๋ฏ๋ก long์ผ๋ก ์ ์ฅํด์ผ ํ๋ค.
- ๋๋๋ ๊ฐ์ด ์๋ค๋ฉด ์์์ด๋ค.
- ์์์ ๊ฐ์๋ฅผ ๋ฐํํ๋ค.
๐ธ end ๐ธ
- ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉํ
์คํธ ์ฐ์ต ํํธ ๋ชจ์์ง์ ํฌํจ๋๋ ๋ฌธ์ ์ฌ์ ํํธ๋ฅผ ๋ณผ ์ ์์๋ค.
- ์์๋ฅผ ํ๋ณํ๊ธฐ์ํด ์ ๊ณฑ๊ทผ๊น์ง ๊ฒ์ฌํ๋ค๋ ๊ฒ๊ณผ long์ผ๋ก ์จ์ผํ๋ค๋ ํํธ์๋๋ฐ ๊ธฐ์กด ์ฝ๋์์ ๋ ๋ค ํด๋น๋์๋ค.
- ์ ์๋ฅผ int๋ก ๋ณํํ๊ณ ์์ ํ๋ณ์ ์๋ผํ ์คํ ๋ค์ค์ ์ฒด๋ฅผ ์ผ์๋๋ฐ, long์ผ๋ก ๋ฐ๊พธ๊ณ ๋๋ ์ ์ฉํ ์ ์์ด์ ์ ๊ณฑ๊ทผ ๋ฐฉ๋ฒ์ผ๋ก ๋ณ๊ฒฝํด์ผ ํ๋ค.
- ๋ฐฐ์ด์ด long ํฌ๊ธฐ๊ฐ ๋๋ค๋ฉด ์๋ผํ ์คํ ๋ค์ค์ ์ฒด๋ ์ธ ์ ์๋ค๋๊ฑธ ์๋กญ๊ฒ ๋ฐฐ์ธ ์ ์์๋ค.
- ์๊ฐ๋ณด๋ค ๋ฌธ์ ๋ค์ด ์์ฐจ๊ณ ์ค๋ช ์ด ์ ๋์ด์์ด์ ๋ชจ์์ง์ ๋ฌธ์ ๋ง ๋ฐ๋ก ํ์ด๋ ์ข์ ๊ฒ ๊ฐ๋ค.
728x90
'CodingTest > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Lv.2 : n์ง์ ๊ฒ์ (0) | 2023.11.11 |
---|---|
Lv.2 : ์์ถ (0) | 2023.11.09 |
Lv.2 : ๋ด์ค ํด๋ฌ์คํฐ๋ง (0) | 2023.11.07 |
Lv.2 : ํ๋ก์ธ์ค (0) | 2023.11.03 |
BOJ_1235 : ํ์ ๋ฒํธ (0) | 2023.11.02 |