온보딩 주차

Chapter.0 온보딩 주차(5)

devjjun 2026. 3. 24. 11:38

TIL(Today I Learned)


1️⃣SQL 강의 3,4주차 수강

  • 데이터 가공하기
    - 데이터 포맷 변경, 그룹화 등 원하는 형태로 데이터를 변경 및 추출
  • 실습문제: 배달시간이 늦었는지 판단하는 값을 만들기,
    [조건]
    주중 : 25분 이상
    주말 : 30분 이상

    그림 1: 제공받은 데이터를 통해 컬럼에 따른 다양한 요소를 확인할 수 있다.
  • 문항분석: case when 형식을 통해 주중, 주말에 따른 배달 시간을 비교하면 문제에 대한 답을 출력할 수 있을 것이다
select	order_id,
		restaurant_name,
		day_of_the_week,
		delivery_time,
		case when delivery_time >= 25 then if(day_of_the_week = 'weekday','Late','On_time')
			when delivery_time >= 30 then if(day_of_the_week = 'weekend','Late','On_time')
			else 'On_time' end '지연여부'
from food_orders

 

그림 2: 출력된 데이터를 보면 주중, 주말인지에 대한 여부와 배달 시간에 따라 지연여부가 조건에 따라 출력된 것을 확인할 수 있다.

  • 수정방안: 코드를 보면 case의 각 when 별로 if문을 통해 예외처리를 하였는데, case문의 else를 통합적으로 예외처리를 하는 것이 간결한 코드가 될 것 같습니다.

2️⃣Python 문법 문제풀이

문제: 배열과 쿼리 처리

정수 배열 arr와 2차원 정수 배열 queries가 주어집니다. 각 queries의 원소는 [s, e, k] 형태이며, 아래 규칙을 수행합니다:

      • s ≤ i ≤ e 인 모든 i에 대해, i가 k의 배수이면 arr[i]에 1을 더합니다.

쿼리를 순서대로 처리한 뒤의 arr를 반환하는 solution 함수를 작성하세요.

제한 사항

      • 1 ≤ arr의 길이 ≤ 1,000
      • 0 ≤ arr의 원소 ≤ 1,000,000
      • 1 ≤ queries의 길이 ≤ 1,000
      • 0 ≤ s ≤ e < arr의 길이
      • 0 ≤ k ≤ 5

입출력 예

arr queries result
[0, 1, 2, 4, 3] [[0, 4, 1],[0, 3, 2],[0, 3, 3]] [3, 2, 4, 6, 4]

설명: 각 쿼리 처리 후 배열 변화

[0, 1, 2, 4, 3]
[1, 2, 3, 5, 4]   # 첫 번째 쿼리 [0,4,1]
[2, 2, 4, 5, 4]   # 두 번째 쿼리 [0,3,2]
[3, 2, 4, 6, 4]   # 세 번째 쿼리 [0,3,3]

 

올바른 파이썬 코드

def solution(arr, queries):
    for s, e, k in queries:
        if k == 0:  # k가 0이면 나눗셈 불가
            continue
        for i in range(s, e+1):
            if i % k == 0:  # i가 k의 배수이면
                arr[i] += 1
    return arr

# 예시 실행
arr = [0, 1, 2, 4, 3]
queries = [[0, 4, 1],[0, 3, 2],[0, 3, 3]]
print(solution(arr, queries))  # [3, 2, 4, 6, 4]

핵심 포인트

    • i가 k의 배수인지 확인: i % k == 0
    • k가 0이면 나눗셈 불가 → continue
    • 쿼리를 순서대로 처리해야 결과가 정확

💡 느낀점

  • SQL 강의를 수강하며 Python을 통해 진행했던 조건문 등의 다양한 문법을 실제 데이터에 적용하여 결과물이 출력되는 것을 보고 능숙하게 SQL을 다루는 것이 중요할 것 같다고 느꼈습니다. 또한, SQLD와 같은 자격증을 갖춘다면 더욱 큰 강점이 될 것 같습니다.

'온보딩 주차' 카테고리의 다른 글

Chapter.0 온보딩 주차(6)  (0) 2026.03.24
Chapter.0 온보딩 주차(4)  (0) 2026.03.24
Chapter.0 온보딩 주차(3)  (0) 2026.03.24
Chapter.0 온보딩 주차(2)  (1) 2026.03.24
Chapter.0 온보딩 주차 (1)  (0) 2026.03.24