๐Ÿค–/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค | Lv1] ํ–„๋ฒ„๊ฑฐ ๋งŒ๋“ค๊ธฐ (Python)

sssbin 2023. 1. 7. 16:50

 

https://school.programmers.co.kr/learn/courses/30/lessons/133502

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

 

(์‹คํŒจ)

์ž…๋ ฅ ๋ฐ›์€ ๋ฐฐ์—ด์„ ์ŠคํŠธ๋ง์œผ๋กœ ๋ฐ”๊ฟ”์„œ '1231'์ด ํฌํ•จ๋˜์—ˆ์„ ๋•Œ ๊ทธ ๋ถ€๋ถ„์„ ์ œ๊ฑฐํ•˜๊ณ  ์ •๋‹ต์˜ ๊ฐœ์ˆ˜๋ฅผ ํ•˜๋‚˜ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ด๋Ÿฐ ์‹์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ’€๋ฉด ์›์†Œ๋“ค์„ ์ œ๊ฑฐํ•˜๋Š” ํ•จ์ˆ˜์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„ ๋•Œ๋ฌธ์— ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค๊ณ  ํ•œ๋‹ค.

# ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 133502: ํ–„๋ฒ„๊ฑฐ ๋งŒ๋“ค๊ธฐ 

def solution(ingredient):
    answer = 0
    ingredient = ''.join(str(i) for i in ingredient)

    while '1231' in ingredient:
        answer += 1
        ingredient = ingredient.replace('1231', '', 1) # ๋งจ ์•ž์˜ ๊ธฐํ˜ธ๋งŒ ๊ต์ฒด 

    return answer

 

(์„ฑ๊ณต)

๋”ฐ๋ผ์„œ ์‹œ๊ฐ„ ์ดˆ๊ณผ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋ฌธ์ž์—ด์„ ํ•˜๋‚˜ ๋” ์„ ์–ธํ•ด์„œ ingredient์˜ ๊ฐ’์„ ํ•˜๋‚˜์”ฉ ๋„ฃ์–ด์ฃผ๊ณ ,

๋งจ ๋์˜ ๋ฌธ์ž์—ด์ด '1231'์ผ ๋•Œ ๋’ค์—์„œ 4๊ฐœ์˜ ๋ฌธ์ž์—ด์„ ์ง€์šฐ๊ณ  ์ •๋‹ต์˜ ๊ฐœ์ˆ˜๋ฅผ ํ•˜๋‚˜ ์ถ”๊ฐ€ํ–ˆ๋‹ค.

# ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 133502: ํ–„๋ฒ„๊ฑฐ ๋งŒ๋“ค๊ธฐ

def solution(ingredient):
    answer = 0
    res = ''
    
    for i in ingredient:
        res += str(i)
        if res[-4:] == '1231':
            res = res[:-4]
            answer += 1

    return answer

 

** ์ถ”๊ฐ€ํ•œ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค **

input) [1, 1, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1]

output) 3

 

input) [2, 1, 2, 3, 1, 2, 3, 1, 1]

output) 1