| ์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
|---|---|---|---|---|---|---|
| 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 | 27 | 28 | 29 | 30 |
- ๋ฐฑ์ค
- python
- vue3
- javascript
- ์ฝํ๋ฆฐ
- ๋ฐฑ์ค ์ฝํ๋ฆฐ
- Swift
- ๋ฏธ๊ตญ์ฃผ์
- kotlin ์๊ณ ๋ฆฌ์ฆ
- ์๋ฐ
- ์๋ฐ์คํฌ๋ฆฝํธ
- java ์ฝ๋ฉ ํ ์คํธ
- ์๋ฐ ์๊ณ ๋ฆฌ์ฆ
- ํ์ฝํ
- ์ฝํ๋ฆฐ ์๊ณ ๋ฆฌ์ฆ
- ๋ฐฐ๋น์ฃผ
- Vue.js
- linux
- ์๊ณ ๋ฆฌ์ฆ
- kotlin algorithm
- ๋ฏธ๊ตญ๋ฐฐ๋น์ฃผํฌ์
- ํ์ด์ฌ
- GIT
- ํ๋ก๊ทธ๋๋จธ์ค
- pnpm
- ์ฝํ๋ฆฐ ์คํ
- CI/CD
- Kotlin
- Java
- js
- Today
- Total
๐ ์ ์ด์ ๋จธ๋ฆฟ์์ผ๋ก
[ํ์ฝํ ] Day1. ์์์ด ๋ฐ (ํ๋ก๊ทธ๋๋จธ์ค "์ ํ๋ฒํธ ๋ชฉ๋ก" ํ์ด) ๋ณธ๋ฌธ
[ํ์ฝํ ] Day1. ์์์ด ๋ฐ (ํ๋ก๊ทธ๋๋จธ์ค "์ ํ๋ฒํธ ๋ชฉ๋ก" ํ์ด)
Space_Jin 2025. 9. 8. 22:07๋งํฌ๋ ์ธ์์ ์ ์ฐํ ๋ณธ ํ์ฝํ ํ๋ก์ ํธ์ ๋ฌด์ง์ฑ์ผ๋ก ์ ์ฒญ์ ํด๋ดค๋ค.
ํ์ฝํ ํ๋ก์ ํธ๋ ํ๋ฃจ ๋งค์ผ ์ฝ๋ฉํ ์คํธ ๋ฃจํด์ ๋ง๋ค์ด์ฃผ๊ธฐ ์ํด์ ์ด๋ฉ์ผ๋ก ๋ฌธ์ ๋ฅผ ๋ณด๋ด์ฃผ๋ ์๋น์ค์ ๋๋ค.
๋งค์ผ ์ฐธ์ฌ๋ก ์ ์ฒญ์ ํ๋๋ฐ ์ผ๋ง๋ ๊พธ์คํํ ์ ์์์ง ๋ชจ๋ฅด๊ฒ ์ง๋ง ํด๋ณด๋๋ฐ๊น์ง๋ ํด๋ณด๋๊ฑธ๋ก...
์ฒซ ๋ฒ์งธ ๋ฌธ์ ๋ก ํ๋ก๊ทธ๋๋จธ์ค "์ ํ๋ฒํธ ๋ชฉ๋ก"์ ๋ฐ์๋ค.
๋ฌธ์ ์ค๋ช
์ ํ๋ฒํธ๋ถ์ ์ ํ ์ ํ๋ฒํธ ์ค, ํ ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ด์ธ ๊ฒฝ์ฐ๊ฐ ์๋์ง ํ์ธํ๋ ค ํฉ๋๋ค.
์ ํ๋ฒํธ๊ฐ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ, ๊ตฌ์กฐ๋ ์ ํ๋ฒํธ๋ ์์์ด์ ์ ํ๋ฒํธ์ ์ ๋์ฌ์
๋๋ค.
- ๊ตฌ์กฐ๋ : 119
- ๋ฐ์ค์ : 97 674 223
- ์ง์์ : 11 9552 4421
์ ํ๋ฒํธ๋ถ์ ์ ํ ์ ํ๋ฒํธ๋ฅผ ๋ด์ ๋ฐฐ์ด phone_book ์ด solution ํจ์์ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ด๋ค ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ด์ธ ๊ฒฝ์ฐ๊ฐ ์์ผ๋ฉด false๋ฅผ ๊ทธ๋ ์ง ์์ผ๋ฉด true๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ ์ฌํญ- phone_book์ ๊ธธ์ด๋ 1 ์ด์ 1,000,000 ์ดํ์
๋๋ค.
- ๊ฐ ์ ํ๋ฒํธ์ ๊ธธ์ด๋ 1 ์ด์ 20 ์ดํ์ ๋๋ค.
- ๊ฐ์ ์ ํ๋ฒํธ๊ฐ ์ค๋ณตํด์ ๋ค์ด์์ง ์์ต๋๋ค.
| ["119", "97674223", "1195524421"] | false |
| ["123","456","789"] | true |
| ["12","123","1235","567","88"] | false |
์
์ถ๋ ฅ ์ #1
์์์ ์ค๋ช
ํ ์์ ๊ฐ์ต๋๋ค.
์
์ถ๋ ฅ ์ #2
ํ ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ฌ์ธ ๊ฒฝ์ฐ๊ฐ ์์ผ๋ฏ๋ก, ๋ต์ true์
๋๋ค.
์
์ถ๋ ฅ ์ #3
์ฒซ ๋ฒ์งธ ์ ํ๋ฒํธ, “12”๊ฐ ๋ ๋ฒ์งธ ์ ํ๋ฒํธ “123”์ ์ ๋์ฌ์
๋๋ค. ๋ฐ๋ผ์ ๋ต์ false์
๋๋ค.
๋ฌธ์ ํ์ด
import java.util.*;
class Solution {
public boolean solution(String[] phone_book) {
boolean answer = true;
// ๋ชจ๋ set์ ์ฝ์
Set<String> set = new HashSet<>(Arrays.asList(phone_book));
// ์ ๋์ด ํ์ธ
for(String num : phone_book) {
answer = isCorrect(set, num);
if(answer == false) break;
}
return answer;
}
public boolean isCorrect(Set<String> set, String num) {
int len = num.length();
// ์๊ธฐ ์์ ์ ํฌํจํด์๋ ์๋๋ค!
for(int i = 1; i < len; i++) {
String n = num.substring(0, i);
if(set.contains(n)) return false;
}
return true;
}
}
์ฃผ์์ฌํญ
1. ์ฒ์ Set์ ๋ชจ๋ ์ฝ์ ํ๋ค.
์ฒ์ ํ์ด๋ฅผ ํ ๋, Set์ ๋ชจ๋ ์ฝ์ ์ ํ์ง ์๊ณ ์ ๋์ด๋ฅผ ๋น๊ตํ์๋๋ฐ ์ด๋ ๊ฒ ํ๊ฒ๋๋ฉด ๋ค์ ๋ค์ด์ค๋ ๊ฐ์ด ์์ ๊ฐ์ ์ ๋์ด์ธ์ง๋ง ํ์ธํ๋ค. ์ฆ, ์์ ๋จผ์ ๋ค์ด์๋ ๊ฐ์ด ํ์ฌ ๊ฐ์ ์ ๋์ด์ธ์ง๋ ๋น๊ตํ ์ ์๋ค.
2. isCorrect ํจ์์์ ์ ๋์ด ํ์ธ์ ๋ฌธ์์ด ์ ์ฒด๋ฅผ ํ์ธํด์๋ ์๋๋ค. ๋ฌธ์์ด ์ ์ฒด๋ ์๊ธฐ์์ ์ด๋๋ฉฐ ์ฒ์ Set์ ๋ชจ๋ ๊ฐ์ ๋ฃ์๊ธฐ ๋๋ฌธ์ ๋ฐ๋์ Set์ ๋ค์ด์์ผ๋ฏ๋ก ๊ฒฐ๊ณผ๊ฐ false๊ฐ ๋๋ค.
'Programming > Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [ํ์ฝํ ] Day3. ์์ฌ์ผ์ผ ๋ฌ์ฑ (ํ๋ก๊ทธ๋๋จธ์ค "ํฐ์ผ๋ชฌ" ํ์ด) (0) | 2025.09.10 |
|---|---|
| [ํ์ฝํ ] Day2. ์ด์ฉ๋ค ๋ณต์ต (ํ๋ก๊ทธ๋๋จธ์ค "์์" ํ์ด) (0) | 2025.09.09 |
| ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ธ์ ์ฌ์ฉํด์ผํ ๊น? (๋ฐฑ์ค) (2) | 2025.06.30 |
| [Java] ๋ชจ๋๋ฌ ์ ๊ณฑ๊ทผ (0) | 2025.05.01 |
| [Java] ์๋ฐ์ ์ด์ง ์ฐ์ฐ(๋นํธ ์ฐ์ฐ) (0) | 2025.04.06 |