โ๋ฌธ์
https://school.programmers.co.kr/learn/courses/30/lessons/42577
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก์ Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
๋ฉ๋ชจ๋ฆฌ: 30 MB, ์๊ฐ: 108.76 ms
์ ํ๋ฒํธ๋ถ์ ์ ํ ์ ํ๋ฒํธ ์ค, ํ ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ด์ธ ๊ฒฝ์ฐ๊ฐ ์๋์ง ํ์ธํ๋ ค ํฉ๋๋ค.
์ ํ๋ฒํธ๊ฐ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ, ๊ตฌ์กฐ๋ ์ ํ๋ฒํธ๋ ์์์ด์ ์ ํ๋ฒํธ์ ์ ๋์ฌ์
๋๋ค.
- ๊ตฌ์กฐ๋ : 119
- ๋ฐ์ค์ : 97 674 223
- ์ง์์ : 11 9552 4421
์ ํ๋ฒํธ๋ถ์ ์ ํ ์ ํ๋ฒํธ๋ฅผ ๋ด์ ๋ฐฐ์ด phone_book ์ด solution ํจ์์ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ด๋ค ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ด์ธ ๊ฒฝ์ฐ๊ฐ ์์ผ๋ฉด false๋ฅผ ๊ทธ๋ ์ง ์์ผ๋ฉด true๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ ์ฌํญ
- phone_book์ ๊ธธ์ด๋ 1 ์ด์ 1,000,000 ์ดํ์
๋๋ค.
- ๊ฐ ์ ํ๋ฒํธ์ ๊ธธ์ด๋ 1 ์ด์ 20 ์ดํ์ ๋๋ค.
- ๊ฐ์ ์ ํ๋ฒํธ๊ฐ ์ค๋ณตํด์ ๋ค์ด์์ง ์์ต๋๋ค.
โ๐ปํ์ด
๋จผ์ phone_book์ ์ ๋ ฌํ๋ค. ์๋ฅผ ๋ค์ด phone_book์ด ["12", "123", "1234", "1256", "125"] ์ด๋ผ๋ฉด
์ด๊ฒ์ ์ ๋ ฌํ์ ๋ ["12", "123", "1233", "125", "1256"] ์ด ๋๋ค.
๊ทธ๋ฌ๋ฏ๋ก ํ์ฌ ์ ํ๋ฒํธ๊ฐ ๋ค์ ์ ํ๋ฒํธ์ ์ ๋์ด์ธ์ง ์๋์ง ํ์ธํ๋ฉด ๋๋ ๊ฒ์ด๋ค.
๐ป์ฝ๋
def solution(phone_book):
phone_book.sort()
for i in range(len(phone_book)-1):
if phone_book[i] in phone_book[i+1][:len(phone_book[i])]:
return False
return True
๐ํ๊ธฐ
์ฒ์ ํธ๋ ๋ฌธ์ ๊ฐ ์๋๋ฐ ์ ์ด๋ป๊ฒ ํ์ด์ผ ํ ์ง ์ฐพ์ง๋ฅผ ๋ชปํ๋ ๊ฑธ๊น...
์ฒ์์ ์ ๋ ฌํ ๋ ๊ธธ์ด ์์ผ๋ก ์ ๋ ฌํด์ ์ผ์ผํ ์ ํ๋ฒํธ๋ง๋ค ์ ๋์ด์ธ์ง ์๋์ง ๋น๊ตํ๋ค.
์ฃผ์ด์ง๋ ํ
์คํธ ์ผ์ด์ค ๊ธธ์ด๊ฐ 1,000,000์ฌ์ O(n²)์ผ๋ก ํ๋๊น ๋น์ฐํ ํจ์จ์ฑํ
์คํธ๋ฅผ ํต๊ณผํ์ง ๋ชปํ๋ค.
["12","123","1235","567","88"] ์ด ํ
์คํธ์ผ์ด์ค๋ฅผ ๋ณด๋ฉด์ ์ ๋์ด๋ค์ด ๋ฐ๋ก ์์ ์์ผ๋ฉด ์ ๋ถ ํ์ํ์ง ์๊ณ ๊ธ๋ฐฉ ๋๋๊ฒ ๋ค. ์ถ์๋๋ฐ ๊ทธ๋ฅ ์ ๋ ฌํ๋ฉด ํ
์คํธ์ผ์ด์ค์ฒ๋ผ ๋๋ค๋ ๊ฒ์ ๋ชฐ๋๋ค...์์์ผ๋ฉด ๋นจ๋ฆฌ ํ์์์ง๋
'Coding Test > Algorithms' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ์ฒด์ก๋ณต/Python - Lv.1 (1) | 2025.07.15 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ์์/Python - Lv.2 (0) | 2025.07.14 |
[ํ๋ก๊ทธ๋๋จธ์ค] ํฐ์ผ๋ชฌ/Python - Lv.1 (1) | 2025.07.09 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์์ฃผํ์ง ๋ชปํ ์ ์/Python - Lv.1 (2) | 2025.07.07 |
[SWEA] 1218. ๊ดํธ ์ง์ง๊ธฐ/Python - D4 (0) | 2025.07.05 |