코딩테스트

[26.01.21 코테(Python/MySQL)]-이상한 문자 만들기&가격이 제일 비싼 식품의 정보 출력하기

지니248 2026. 1. 21. 16:54

Lv1. 이상한 문자 만들기 (Python)

링크: https://school.programmers.co.kr/learn/courses/30/lessons/12930

 

내가 작성한 코드

def solution(s):
    answer = ''
    idx = 0 # 단어 안에서의 글자 인덱스 (0부터 시작)
    
    for ch in s:
        if ch == ' ': # 공백이면
            answer += ' ' # 공백 그대로 추가
            idx = 0 # 다음 단어를 위해 인덱스 초기화
        else: # 공백이 아니라면
            if idx % 2 == 0: # 단어 기준 짝수 번째 글자라면
                answer += ch.upper() # 대문자로 치환
            else: # 단어 기준 홀수 번째 글자라면
                answer += ch.lower() # 소문자로 치환
            idx += 1 # 단어 안에서 다음 글자로 넘어감
            
    return answer

 

새로 배운 코드

def solution(s):  
    return " ".join( # 변환된 단어들을 공백으로 다시 합침
        map( # 각 단어에 같은 작업을 적용
            lambda word: # 단어 하나를 받아 짝/홀수 규칙에 맞게 변환하는 함수
            "".join( # 변환된 문자들을 하나의 문자열로 합침
                [
                    ch.lower() if idx % 2 # 단어 기준 홀수 인덱스는 소문자
                    else ch.upper() # 단어 기준 짝수 인덱스는 대문자
                    for idx, ch in enumerate(word) # (인덱스, 문자) 형태로 하나씩 반환 (idx를 직접 증가시키지 않아도 인덱스 값이 순서대로 들어옴)
                ]),s.split(" "))) # 문자열을 공백 기준으로 단어 리스트로 분리
    
#return " ".join(map(lambda word:"".join([ch.lower() if idx % 2 else ch.upper() for idx, ch in enumerate(word)]),s.split(" ")))

Lv2. 가격이 제일 비싼 식품의 정보 출력하기 (MySQL)

링크: https://school.programmers.co.kr/learn/courses/30/lessons/131115

 

내가 작성한 코드

SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICE
FROM FOOD_PRODUCT
WHERE PRICE = (SELECT MAX(PRICE)
               FROM FOOD_PRODUCT);