코딩테스트

[25.12.22 코테(Python/MySQL)]-예산&조건에 부합하는 중고거래 댓글 조회하기

지니248 2025. 12. 22. 13:23

Lv1. 예산 (Python)

링크: 코딩테스트 연습 - 예산 | 프로그래머스 스쿨

 

내가 작성한 코드

def solution(d, budget):
    d.sort() # 오름차순 정렬 -> 신청 금액이 작은 부서부터 지원하기 위함
    count = 0 # 지원할 수 있는 부서 개수
    
    for cost in d:
        if budget >= cost: # 예산으로 해당 부서의 신청 금액을 지원할 수 있다면
            budget -= cost # 예산에서 신청 금액 차감
            count += 1 # 지원한 부서 수 증가
        else: # 예산이 부족하면 더 이상 지원할 수 없으므로
            break # 반복 종료
    return count

Lv1. 조건에 부합하는 중고거래 댓글 조회하기 (MySQL)

링크: 코딩테스트 연습 - 조건에 부합하는 중고거래 댓글 조회하기 | 프로그래머스 스쿨

 

내가 작성한 코드

# MySQL
SELECT 
    B.TITLE
    ,B.BOARD_ID
    ,R.REPLY_ID
    ,R.WRITER_ID
    ,R.CONTENTS
    ,DATE_FORMAT(R.CREATED_DATE, '%Y-%m-%d') AS CREATED_DATE
FROM USED_GOODS_BOARD B 
JOIN USED_GOODS_REPLY R 
  ON B.BOARD_ID = R.BOARD_ID
WHERE B.CREATED_DATE >= DATE '2022-10-01' 
  AND B.CREATED_DATE < DATE '2022-11-01'
ORDER BY R.CREATED_DATE ASC, B.TITLE ASC;

 

# (참고) ORACLE
SELECT 
    B.TITLE
    ,B.BOARD_ID
    ,R.REPLY_ID
    ,R.WRITER_ID
    ,R.CONTENTS
    ,TO_CHAR(R.CREATED_DATE, 'YYYY-MM-DD') AS CREATED_DATE
FROM USED_GOODS_BOARD B
JOIN USED_GOODS_REPLY R 
  ON B.BOARD_ID = R.BOARD_ID
WHERE B.CREATED_DATE >= DATE '2022-10-01'
  AND B.CREATED_DATE <  DATE '2022-11-01'
ORDER BY R.CREATED_DATE ASC, B.TITLE ASC;