๋ฌธ์ ์ค๋ช
https://school.programmers.co.kr/learn/courses/30/lessons/42577
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก, ์ฑ์ฉ๊น์ง Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
์ ํ๋ฒํธ๋ถ์ ์ ํ ์ ํ๋ฒํธ ์ค, ํ ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ด์ธ ๊ฒฝ์ฐ๊ฐ ์๋์ง ํ์ธํ๋ ค ํฉ๋๋ค.
์ ํ๋ฒํธ๊ฐ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ, ๊ตฌ์กฐ๋ ์ ํ๋ฒํธ๋ ์์์ด์ ์ ํ๋ฒํธ์ ์ ๋์ฌ์
๋๋ค.
- ๊ตฌ์กฐ๋ : 119
- ๋ฐ์ค์ : 97 674 223
- ์ง์์ : 11 9552 4421
์ ํ๋ฒํธ๋ถ์ ์ ํ ์ ํ๋ฒํธ๋ฅผ ๋ด์ ๋ฐฐ์ด phone_book ์ด solution ํจ์์ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ด๋ค ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ด์ธ ๊ฒฝ์ฐ๊ฐ ์์ผ๋ฉด false๋ฅผ ๊ทธ๋ ์ง ์์ผ๋ฉด true๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ ์ฌํญ
- phone_book์ ๊ธธ์ด๋ 1 ์ด์ 1,000,000 ์ดํ์
๋๋ค.
- ๊ฐ ์ ํ๋ฒํธ์ ๊ธธ์ด๋ 1 ์ด์ 20 ์ดํ์ ๋๋ค.
- ๊ฐ์ ์ ํ๋ฒํธ๊ฐ ์ค๋ณตํด์ ๋ค์ด์์ง ์์ต๋๋ค.
์ ์ถ๋ ฅ ์
phone_book | return |
["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;
// phone_book ๋ฐฐ์ด ์ค๋ฆ์ฐจ์ ์ ๋ ฌ
Arrays.sort(phone_book);
// ๋ฐ๋ณต๋ฌธ์ ํ์ฉํ์ฌ phone_book ๋ฐฐ์ด ์ํ
for (int i = 0; i < phone_book.length - 1; i++) {
// ๋ง์ฝ ๋ค์ ๊ฐ์ด ํ์ฌ ๊ฐ์ผ๋ก ์์ํ๋ค๋ฉด
if (phone_book[i+1].startsWith(phone_book[i])) {
// answer์ false ์ ์ฅ
answer = false;
// ๋ฐ๋ณต๋ฌธ ์ข
๋ฃ
break;
}
}
// answer ๋ฐํ
return answer;
}
}
๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํด ์๊ฐํ ๋ฐฉํฅ
๋ฐฐ์ด์ ์ ๋ ฌํ๊ณ ๋ฐ๋ก ๋ค์ ๊ฐ๊ณผ ๋น๊ตํ๋ค.
์ ๋์ด์ธ์ง ๋น๊ต์ด๊ธฐ ๋๋ฌธ์ ๊ฐ์ด ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ๋์ด ์์ผ๋๊น ์ฐจ๋ก๋ก ๋น๊ตํ๋ฉด์ ์๋ถ๋ถ์ ํด๋น ๋ฌธ์์ด์ด ํฌํจ๋์ด ์๋์ง ํ์ธํ๋ค.
ํฌํจ๋์ด ์์ผ๋ฉด false, ๊ทธ๋ ์ง ์์ผ๋ฉด true๋ฅผ ๋ฐํํ๋ค.
startsWtih()
๋์ ๋ฌธ์์ด์ด ํน์ ๋ฌธ์ ๋๋ ๋ฌธ์์ด๋ก ์์ํ๋์ง ์ฒดํฌํ๋ ํจ์
ํด๋น ๋ฌธ์์ด๋ก ์์๋๋์ง ์ฌ๋ถ๋ฅผ ํ์ธํ๊ณ boolean์ ๋ง์ถฐ true/false ๊ฐ์ ๋ฐํํ๋ค.
๋น๊ต๋์๋ฌธ์์ด.startsWith("์ฒดํฌํ ๋ฌธ์์ด");
๊ณต๋ฐฑ๋ ์ทจ๊ธํ๊ธฐ ๋๋ฌธ์ ํ์ธํ๊ณ ์ฌ์ฉํด์ผ ํ๋ค.
endsWith()
๋์ ๋ฌธ์์ด์ด ํน์ ๋ฌธ์ ๋๋ ๋ฌธ์์ด๋ก ๋๋๋์ง ์ฒดํฌํ๋ ํจ์
ํด๋น ๋ฌธ์์ด๋ก ๋๋๋์ง ์ฌ๋ถ๋ฅผ ํ์ธํ๊ณ boolean์ ๋ง์ถฐ true/false ๊ฐ์ ๋ฐํํ๋ค.
๋น๊ต๋์๋ฌธ์์ด.endsWith("์ฒดํฌํ ๋ฌธ์์ด");
๊ณต๋ฐฑ๋ ์ทจ๊ธํ๊ธฐ ๋๋ฌธ์ ํ์ธํ๊ณ ์ฌ์ฉํด์ผ ํ๋ค.
References
https://jamesdreaming.tistory.com/86
[ ์๋ฐ ์ฝ๋ฉ ] Java startsWith(), endsWith()
์๋ ํ์ธ์. ์ ์์ค ์ ๋๋ค. ์ด๋ฒ ํฌ์คํ ๋ ์ญ์ ์๋ฐ์ String ๊ด๋ จ ํจ์๋ฅผ ์ ๋ฆฌ ํ๊ณ ์ ํฉ๋๋ค. ์ด๋ฒ์๋ ๋์ ๋ฌธ์์ด์ด ํน์ ๋ฌธ์ ๋๋ ๋ฌธ์์ด๋ก ์์ ํ๊ฑฐ๋ ๋๋๋์ง์ ๋ํด ์ฒดํฌ ํ ์ ์๋
jamesdreaming.tistory.com
https://mine-it-record.tistory.com/128
[JAVA] ์๋ฐ_startsWith/endsWith (ํน์ ๋ฌธ์๋ก ์์ํ๊ฑฐ๋ ๋๋๋์ง ์ฒดํฌ)
- ํน์ ๋ฌธ์๋ก ์์ํ๊ฑฐ๋ ๋๋๋์ง ํ์ธํ๊ธฐ - startsWith() - boolean startsWith(String prefix) - startsWith() ํจ์๋ ๋์ ๋ฌธ์์ด์ด ํน์ ๋ฌธ์ ๋๋ ๋ฌธ์์ด๋ก ์์ํ๋์ง ์ฒดํฌํ๋ ํจ์์ด๋ค. - ํด๋น ๋ฌธ์์ด๋ก
mine-it-record.tistory.com
'๐งฉ ํ๋ก๊ทธ๋๋จธ์ค > ๐ต ์๊ณ ๋ฆฌ์ฆ ํ์ด(Java)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค/Java] ํ๋ก์ธ์ค (1) | 2025.04.08 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค/Java] ์์ (1) | 2025.04.07 |
[ํ๋ก๊ทธ๋๋จธ์ค/Java] ํฐ์ผ๋ชฌ (3) | 2025.04.04 |
[ํ๋ก๊ทธ๋๋จธ์ค/Java] ์์ฃผํ์ง ๋ชปํ ์ ์ (2) | 2025.04.03 |
[ํ๋ก๊ทธ๋๋จธ์ค/Java] H-index (0) | 2025.04.02 |