본문 바로가기
프로그래머스/lv.1

[PCCE 기출문제] 10번 / 데이터 분석

by bingual 2024. 1. 30.
반응형

 

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문제풀이

SQL 조건, 정렬문을 알고리즘으로 구현하게끔 하는 문제다.

from functools import cmp_to_key


def solution(data, ext, val_ext, sort_by):
    cols = {"code": 0, "date": 1, "maximum": 2, "remain": 3}

    def cmp(x, y):
        return x[cols[sort_by]] - y[cols[sort_by]]

    # data에서 ext 값이 val_ext보다 이하인 데이터만 뽑음
    data = [row for row in data if row[cols[ext]] <= val_ext]

    # sort_by에 해당하는 값을 기준으로 오름차순으로 정렬
    answer = sorted(data, key=cmp_to_key(cmp))
    return answer

'프로그래머스 > lv.1' 카테고리의 다른 글

신고 결과 받기  (1) 2024.01.31
개인정보 수집 유효기간  (0) 2024.01.30
성격 유형 검사하기  (0) 2024.01.30
둘만의 암호  (0) 2024.01.29
신규 아이디 추천  (0) 2024.01.28