๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๊ฐœ๋ฐœ/๐™‹๐™ง๐™ค๐™œ๐™ง๐™–๐™ข๐™ข๐™š๐™ง๐™จ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค '๋ง์น ํ•˜๊ธฐ' ํŒŒ์ด์ฌ ํ’€์ด

by beomcoder 2023. 3. 5.
728x90
๋ฐ˜์‘ํ˜•
 

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

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

programmers.co.kr

"""
์–ด๋А ํ•™๊ต์— ํŽ˜์ธํŠธ๊ฐ€ ์น ํ•ด์ง„ ๊ธธ์ด๊ฐ€ n๋ฏธํ„ฐ์ธ ๋ฒฝ์ด ์žˆ์Šต๋‹ˆ๋‹ค. 
๋ฒฝ์— ๋™์•„๋ฆฌ ยท ํ•™ํšŒ ํ™๋ณด๋‚˜ ํšŒ์‚ฌ ์ฑ„์šฉ ๊ณต๊ณ  ํฌ์Šคํ„ฐ ๋“ฑ์„ ๊ฒŒ์‹œํ•˜๊ธฐ ์œ„ํ•ด 
ํ…Œ์ดํ”„๋กœ ๋ถ™์˜€๋‹ค๊ฐ€ ์ฒ ๊ฑฐํ•  ๋•Œ ๋–ผ๋Š” ์ผ์ด ๋งŽ๊ณ  ๊ทธ ๊ณผ์ •์—์„œ ํŽ˜์ธํŠธ๊ฐ€ ๋ฒ—๊ฒจ์ง€๊ณค ํ•ฉ๋‹ˆ๋‹ค.
ํŽ˜์ธํŠธ๊ฐ€ ๋ฒ—๊ฒจ์ง„ ๋ฒฝ์ด ๋ณด๊ธฐ ํ‰ํ•ด์ ธ ํ•™๊ต๋Š” ๋ฒฝ์— ํŽ˜์ธํŠธ๋ฅผ ๋ง์น ํ•˜๊ธฐ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค.
(์ค‘๋žต)
"""

def solution(n, m, section):
    paint, answer = section[0]-1, 0
    for v in section:
        if paint < v:
            paint = v+m-1
            answer += 1
            
    return answer

"""
์ƒ๊ฐํ•œ ๋ฐฉ์‹์€ ํŽ˜์ธํŠธ์น ์„ ํ•˜๊ณ  ํŽ˜์ธํŠธ์น ํ•œ ๋ถ€๋ถ„๋ณด๋‹ค ๋” ํฐ ์„น์…˜์ด ๋ฐœ๊ฒฌ๋˜๋ฉด
๋‹ค์‹œ ๊ทธ ๋ถ€๋ถ„๋ถ€ํ„ฐ ํŽ˜์ธํŠธ์น ์„ ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ํ’€์—ˆ๋‹ค.

ํŽ˜์ธํŠธ์น ๋งŒ ํ•˜๋ฉด ๋˜๊ธฐ๋•Œ๋ฌธ์— n์€ ํ•„์š”์—†๋‹ค.
paint, answer ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•ด์ฃผ๊ณ 
section์„ for๋ฌธ์œผ๋กœ ๋Œ์•˜๋‹ค.

์น ํ•ด์•ผํ•˜๋Š” ์„น์…˜์ด paint๋ณด๋‹ค ์ž‘๋‹ค๋ฉด ์•„์ง ๊ทธ ์„น์…˜์ด ์น ํ•ด์ง€์ง€ ์•Š์€๊ฒƒ์ด๋ฏ€๋กœ
๊ทธ ๋ถ€๋ถ„๋ถ€ํ„ฐ m๋ฏธํ„ฐ๊นŒ์ง€ ์น ํ•œ๋‹ค๊ณ  ํ•œ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ํŽ˜์ธํŠธ๋ฅผ ํ•œ๋ฒˆ ์น ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— answer์„ 1๋ฒˆ ๋”ํ•ด์ฃผ์—ˆ๋‹ค.

ex) 
section์„ [2,3,6], m์€ 4๋ผ๊ณ  ํ•œ๋‹ค๋ฉด paint๋Š” 1์ด ๋œ๋‹ค.
section์€ 00110 (1์ด ์น ํ•ด์ง„๋ถ€๋ถ„)์ด๋ผ๊ณ  ๊ฐ€์ •ํ•ด๋ณธ๋‹ค.

์ฒ˜์Œ์— section์ด 2์ด๋ฉด paint๋ณด๋‹ค ํฌ๊ธฐ๋•Œ๋ฌธ์— ์น ํ•ด์ฃผ์–ด์•ผํ•œ๋‹ค.
paint = 2(v)+4(m)-1 = 5๊ฐ€ ๋˜๊ณ  11110์ด ๋œ๋‹ค.

๋‹ค์Œ for๋ฌธ์ด ๋Œ๋ฉด v = 3์ด ๋˜๊ณ  ์ „ for๋ฌธ์—์„œ ์ด๋ฏธ 2~5๊นŒ์ง€ ์น ํ–ˆ๊ธฐ๋•Œ๋ฌธ์—
3์€ ์น ํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ณ  if๋ฌธ์„ ๋น ์ ธ๋‚˜๊ฐ„๋‹ค.

๋งˆ์ง€๋ง‰ 6์€ ์น ํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ํ•œ๋ฒˆ๋” ์น ํ•ด์ฃผ๊ณ  section์ด ๋๋‚˜๊ณ  ๋ฆฌํ„ดํ•œ๋‹ค.
"""
728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€