[Programmers] ์Šคํ‚ฌํŠธ๋ฆฌ

Updated:

์Šคํ‚ฌํŠธ๋ฆฌ

์Šคํ‚ฌํŠธ๋ฆฌ ๋ฅผ ํด๋ฆญํ•˜๋ฉด ๋ฐ”๋กœ ์ด๋™ํ•œ๋‹ค.

์ด ๋ฌธ์ œ๋Š” ์Šคํ‚ฌ์„ ๋ฐฐ์›Œ์•ผ ํ•  ์ˆœ์„œ๋ฅผ ์ฃผ๋ฉด ์Šคํ‚ฌํŠธ๋ฆฌ๊ฐ€ ์„ ํ–‰ ์Šคํ‚ฌ ์ˆœ์„œ์— ๋งž๊ฒŒ ์ž…๋ ฅ๋˜์—ˆ๋‚˜ ์ฒดํฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.

skill skill_trees return
โ€œCBDโ€ [โ€œBACDEโ€, โ€œCBADFโ€, โ€œAECBโ€, โ€œBDAโ€] 2

โ€œCBDโ€ ๋ผ๋Š” ์Šคํ‚ฌ ์ˆœ์„œ๊ฐ€ ์ฃผ์–ด์กŒ๊ณ  ์ฃผ์–ด์ง„ ์Šคํ‚ฌํŠธ๋ฆฌ๊ฐ€ ์ ํ•ฉํ•œ์ง€ ๊ฒ€์‚ฌํ•˜๋ฉด ๋œ๋‹ค !

์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” โ€œCBADFโ€, โ€œAECBโ€ ๊ฐ€ ์ ํ•ฉํ•œ ์Šคํ‚ฌํŠธ๋ฆฌ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฆฌํ„ด๊ฐ’์€ 2 ์ด๋‹ค.

์ฒ˜์Œ์— ์–ด๋–ป๊ฒŒ ์ ‘๊ทผํ•ด์•ผํ• ๊นŒ ๊ฝค ๊ณ ๋ฏผํ–ˆ๋‹ค.. Level2 ๋ฌธ์ œ์ธ๋ฐ..

์–ด์จŒ๋“ , ํŒŒ์ด์ฌ์„ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ŠคํŠธ๋ง์„ ๋‹ค๋ฃจ๋Š” ํ•จ์ˆ˜๊ฐ€ ์•„์ฃผ ๋‹ค์–‘ํ•˜๊ณ  ์œ ์šฉํ•œ๊ฒŒ ๋งŽ๋‹ค๋Š” ๊ฑธ ์•Œ์•˜๋‹ค.

๊ทธ๋ž˜์„œ ์ƒ๊ฐํ•œ ํ’€์ด๋ฒ•์€ ์Šคํ‚ฌํŠธ๋ฆฌ์—์„œ ์ฃผ์–ด์ง„ ์Šคํ‚ฌ๋“ค๋งŒ ๋ฝ‘์•„๋‚ด ์ƒˆ๋กœ์šด ์Šคํ‚ฌํŠธ๋ฆฌ๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค๋ฉด โ€œBACDEโ€ ๊ฐ™์€ ๊ฒฝ์šฐ ์ฃผ์–ด์ง„ ์Šคํ‚ฌ์ธ โ€œCBDโ€ ๋งŒ ๋ฝ‘์•„๋‚ธ๋‹ค๋ฉด โ€œBCDโ€ ๊ฐ€ ๋œ๋‹ค.

์ด๋ ‡๊ฒŒ ๋ฝ‘์•„๋‚ธ ์Šคํ‚ฌ์„ โ€œCBDโ€ ์™€ ๋น„๊ตํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

ํŒŒ์ด์ฌ์—๋Š” A ์ŠคํŠธ๋ง์ด B์— ํฌํ•จ๋˜์–ด์žˆ๋Š”์ง€๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์•„์ฃผ ์ข‹์€ ํ•จ์ˆ˜๊ฐ€ ์žˆ๋‹ค.

๊ทธ๋ž˜์„œ ํฌํ•จ์ด ๋˜์–ด์žˆ๋‹ค๋ฉด ์นด์šดํŠธ ๊ฐ’์„ 1 ์˜ฌ๋ ธ๋‹ค.

๋‹น์—ฐํžˆ ๋ฐฑ์ ์ผ ๊ฒƒ์ด๋ž€ ์ƒ๊ฐ์„ ํ•˜๊ณ  ์ œ์ถœํ–ˆ๋Š”๋ฐ ํ…Œ์ŠคํŠธ์ผ€์ด์Šค 10๊ฐœ ์ค‘ ํ•œ ๊ฐœ๋งŒ ๋งž์•˜๋‹ค..

๋ฌธ์ œ๊ฐ€ ๋ฌด์—‡์ธ๊ฐ€ ์ž์„ธํžˆ ๋ณด๋‹ˆ ๋งˆ์ง€๋ง‰ ๊ฐ™์€ ๊ฒฝ์šฐ โ€œBDAโ€ ์—์„œ ์Šคํ‚ฌ์„ ๋ฝ‘์•„๋‚ด๋ฉด โ€œBDโ€ ๊ฐ€ ๋˜๊ณ 

โ€œCBDโ€ ์—๋Š” ํฌํ•จ๋˜๋‹ˆ ์ด ์Šคํ‚ฌํŠธ๋ฆฌ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ํŒ๋‹จ ํ•ด ์นด์šดํŠธ๋ฅผ ์˜ฌ๋ ธ๋˜ ๊ฒƒ์ด๋‹ค..

C ๋ฅผ ๋จผ์ € ๋ฐฐ์šฐ์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— โ€œBDโ€ ๋Š” ์„ฑ๋ฆฝํ•˜์ง€ ์•Š๋Š”๋‹ค.

๊ทธ๋ž˜์„œ ์–ด๋–ค ๋ฐฉ๋ฒ•์ด ์žˆ๋‚˜ ์ƒ๊ฐํ•ด ๋ณด๋˜ ์ค‘.. ์•ž์„œ ๋ฝ‘์•„๋‚ธ ์Šคํ‚ฌ์ด ํฌํ•จ๋งŒ ๋˜์–ด์žˆ์œผ๋ฉด ์นด์šดํŠธ๋ฅผ ์˜ฌ๋ ธ๋Š”๋ฐ

ํฌํ•จ๋˜์–ด์žˆ๋Š” ์œ„์น˜๊ฐ€ ์ธ๋ฑ์Šค 0 ๋ถ€ํ„ฐ ์‹œ์ž‘๋˜์–ด์žˆ์œผ๋ฉด ์กฐ๊ฑด์ด ์„ฑ๋ฆฝํ–ˆ๋‹ค.

๋ง๋กœ ์„ค๋ช…ํ•˜๋ ค๋‹ˆ ๋ณต์žกํ•œ ๊ฒƒ ๊ฐ™์€๋ฐ ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด ์ดํ•ด๊ฐ€ ๊ฐˆ ๊ฒƒ์ด๋‹ค.

def solution(skill, skill_trees):
    answer = 0
    data = ""
    i = 0
    # skill๊ณผ ๋น„๊ตํ•ด ์žˆ๋Š” ์Šคํ‚ฌ๋งŒ ์ถ”์ถœ
    for skillTreeCur in skill_trees:
    	for skillTreeIndex in skillTreeCur:
    		if skillTreeIndex in skill:
    				data += skillTreeIndex
    	if data in skill and skill.find(data) == 0: # ํฌํ•จ๋˜์–ด์žˆ๋Š” ์œ„์น˜๊ฐ€ 0 ์ด์–ด์•ผํ•œ๋‹ค
    		answer += 1
    	data = ""
    return answer

์ด ๋ฌธ์ œ๋ฅผ ํ’€๋ฉด์„œ ๋Š๋‚€๊ฑด๋ฐ.. C ๊ฐ™์€ ๊ฒฝ์šฐ๋Š” ๊ตฌ๋ฌธ์„ {} ์ค‘๊ด„ํ˜ธ๋กœ ๋ฌถ์–ด์„œ ๊ตฌ๋ถ„์ด ์ž˜ ๊ฐ€๋Š”๋ฐ

ํŒŒ์ด์ฌ์€ ๋“ค์—ฌ์“ฐ๊ธฐ๋กœ ๊ตฌ๋ถ„์„ ํ•˜๋‹ˆ ์ด์ค‘ํฌ๋ฌธ์— ์กฐ๊ฑด๋ฌธ์„ ์“ฐ๋‹ˆ ์กฐ๊ธˆ ํ—ท๊ฐˆ๋ ธ๋‹ค.

ํŒŒ์ด์จ๋‹‰ ํ•œ ์ฝ”๋“œ๋ฅผ ์งœ๋„๋ก ๋…ธ๋ ฅํ•˜์ž..


Categories:

Updated:

Leave a comment