๊ด€๋ฆฌ ๋ฉ”๋‰ด

Algo ์“ฐ์ž

[Programmers] ์‹คํŒจ์œจ ๋ณธ๋ฌธ

๐Ÿ’ฏ CodingTest/Programmers

[Programmers] ์‹คํŒจ์œจ

S.Honey 2022. 4. 18. 09:30

โ–ถ ๋ฌธ์ œ : 

 

 

โ–ถ ์ฝ”๋“œ : 

 

def solution(N, stages):
    answer= []
    totalUser=len(stages)
    count = {}
    for i in range(N):
        count[i+1] = 0
        
    stages.sort()
    
    for stage in stages:
        if stage == N+1:
            continue
        else:
            count[stage] += 1
    
    failure = {}
    
    for i in range(1,N+1):
        if totalUser == 0:
            failure[i] = 0
        else:    
            failure[i] = count[i]/totalUser     
        totalUser -= count[i]
    
    answerHash = sorted(failure.items(), key = lambda item : item[1],reverse=True)
    #Value๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ
    
    for i in range(len(answerHash)):
        answer.append(answerHash[i][0])
        
    return answer

 

โ–ถ ๋ฌธ์ œํ’€์ด : 

 

1. ์ดˆ๊ธฐ stages์— ๋‹ด๊ฒจ์žˆ๋Š” stage์ •๋ณด๋ฅผ ์ด์šฉํ•ด ์ด ๋ช‡๋ฒˆ์˜ ์Šคํ…Œ์ด์ง€๊ฐ€ ๋“ฑ์žฅํ–ˆ๋Š”์ง€ ์„ธ์ฃผ์—ˆ๋‹ค.

2. ์ดํ›„ 1์Šคํ…Œ์ด์ง€๋ถ€ํ„ฐ ์‹คํŒจ์œจ์„ ๊ณ„์‚ฐํ•˜์˜€๊ณ , ๋งˆ์ง€๋ง‰์—๋Š” ์ €์žฅ๋œ count ํ•ด์‹œํ…Œ์ด๋ธ”์—์„œ ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ์„ ์ง„ํ–‰ํ•˜์˜€๋‹ค.