상상쓰

[프로그래머스] 4주차_직업군 추천하기 본문

Coding Test

[프로그래머스] 4주차_직업군 추천하기

상상쓰 2021. 8. 23. 13:59

https://programmers.co.kr/learn/courses/30/lessons/84325

 

코딩테스트 연습 - 4주차

개발자가 사용하는 언어와 언어 선호도를 입력하면 그에 맞는 직업군을 추천해주는 알고리즘을 개발하려고 합니다. 아래 표는 5개 직업군 별로 많이 사용하는 5개 언어에 직업군 언어 점수를 부

programmers.co.kr

 

직업군 언어 점수와 선호도를 내적하여 점수를 구한 뒤 직업군과 그 점수를 정렬하여 조건에 맞는 직업군을 반환하였다.

 

def solution(table, languages, preference):
    
    return sorted(list(map(lambda x : [x.split()[0], sum([(6 - x.split().index(languages[i])) * preference[i] if languages[i] in x.split() else 0 for i in range(len(languages))])], table)), key = lambda x : (-x[1], x[0]))[0][0]
    
print(solution(['SI JAVA JAVASCRIPT SQL PYTHON C#', 'CONTENTS JAVASCRIPT JAVA PYTHON SQL C++', 'HARDWARE C C++ PYTHON JAVA JAVASCRIPT', 'PORTAL JAVA JAVASCRIPT PYTHON KOTLIN PHP', 'GAME C++ C# JAVASCRIPT C JAVA'], ['PYTHON', 'C++', 'SQL'], [7, 5, 5])) # HARDWARE
Comments