๐Ÿค— [1์ฐจ] ์บ์‹œ

Jake_Youngยท2020๋…„ 9์›” 3์ผ
0

์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ, Coding Test

๋ชฉ๋ก ๋ณด๊ธฐ
8/23
post-thumbnail

๐Ÿ‘‰๋ฌธ์ œ ๋งํฌ


์ •๋‹ต ์ฝ”๋“œ ๋ฐ ํ•ด์„ค

def solution(cacheSize, cities):
# ์บ์‹œ๊ฐ€ ์—†๋‹ค๋ฉด ์ „์ฒด ๋„์‹œ ๊ฐฏ์ˆ˜์— 5๋ฅผ ๊ณฑํ•œ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฐ๋‹ค
    if cacheSize == 0:
        return len(cities)*5
    answer = 0
# ์บ์‹œ ์‚ฌ์ด์ฆˆ์— ๋งž๋Š” ์บ์‹œ๋ฅผ ๋งŒ๋“ ๋‹ค
    cache = ["" for _ in range(cacheSize)]
    for city in cities:
# ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ณ„ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ „์ฒด ์†Œ๋ฌธ์ž๋กœ ๋ฐ”๊ฟ” ์ž‘์—…ํ•œ๋‹ค
        city = city.lower()
# ์บ์‹œ์— ์žˆ๋‹ค๋ฉด 1์ดˆ๋ฅผ ๋”ํ•˜๊ณ  ํ•ด๋‹น ์ž๋ฃŒ๋ฅผ ์‚ญ์ œํ•œ๋‹ค
        if city in cache:
            answer += 1
            cache.remove(city)
# ์บ์‹œ์— ์—†๋‹ค๋ฉด 5์ดˆ๋ฅผ ๋”ํ•˜๊ณ  ๊ฐ€์žฅ ์˜ค๋ž˜๋œ ์ž๋ฃŒ๋ฅผ ์‚ญ์ œํ•œ๋‹ค
        else:
            answer += 5
            cache.pop(0)
# ์ง€๊ธˆ ๋‚˜์˜จ ๋‹จ์–ด๋ฅผ ๊ฐ€์žฅ ์ตœ์‹  ์ž๋ฃŒ๋ผ๊ณ  ์—…๋ฐ์ดํŠธ ํ•œ๋‹ค
        cache.append(city)
    return answer
profile
์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์™€ ํŒŒ์ด์ฌ ๊ทธ๋ฆฌ๊ณ  ์ปดํ“จํ„ฐ์™€ ๋„คํŠธ์›Œํฌ

0๊ฐœ์˜ ๋Œ“๊ธ€