[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค-Lv2] ์ „ํ™”๋ฒˆํ˜ธ ๋ชฉ๋ก / Python

๐Ÿ“š Problem Solving/Programmers

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์ „ํ™”๋ฒˆํ˜ธ ๋ชฉ๋ก

์ „ํ™”๋ฒˆํ˜ธ๋ถ€์— ์ ํžŒ ์ „ํ™”๋ฒˆํ˜ธ ์ค‘, ํ•œ ๋ฒˆํ˜ธ๊ฐ€ ๋‹ค๋ฅธ ๋ฒˆํ˜ธ์˜ ์ ‘๋‘์–ด์ธ ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋ ค ํ•ฉ๋‹ˆ๋‹ค. ์ „ํ™”๋ฒˆํ˜ธ๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์„ ๊ฒฝ์šฐ, ๊ตฌ์กฐ๋Œ€ ์ „ํ™”๋ฒˆํ˜ธ๋Š” ์˜์„์ด์˜ ์ „ํ™”๋ฒˆํ˜ธ์˜ ์ ‘๋‘์‚ฌ์ž…๋‹ˆ๋‹ค. ๊ตฌ์กฐ

programmers.co.kr

import sys

input = sys.stdin.readline
phone_book = list(map(str, input().split()))


def solution(phone_book):
    phone_book.sort()
    for a, b in zip(phone_book, phone_book[1:]):
        if a == b[:len(a)]:
            return False
    return True


print(solution(phone_book))

 

ํ•ด์„ค

๋ฆฌ์ŠคํŠธ๋ฅผ ์ •๋ ฌํ•œ๋‹ค.

zip์„ ์ด์šฉํ•ด ์—ฐ์†๋œ ๋‘ ๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ a, b๋กœ ์น˜ํ™˜ํ•ด์ฃผ๊ณ  b์˜ ์ฒซ a๋งŒํผ์˜ ๊ธธ์ด๊ฐ€ a์™€ ๊ฐ™๋‹ค๋ฉด ์ ‘๋‘์–ด์— ํฌํ•จ์ด ๋˜๋ฏ€๋กœ false๋ฅผ ๋ฆฌํ„ดํ•œ๋‹ค.