2025 내일배움캠프 QAQC_2기

2025 내일배움캠프 QAQC_2기 본캠프 23일차

mingdoremi 2025. 6. 13. 20:50

안녕하세요! 오늘은 본캠프 23일차입니다!!

 

오늘의 코드카타!

<Python>

나누어 떨어지는 숫자 배열

문제 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환

제한사항 

arr은 자연수를 담은 배열

정수 i, j에 대해 i  i ≠ j 이면 arr[i] ≠ arr[j]

divisor은 자연수

array는 길이 1 이상인 배열

def solution(arr, divisor):
    answer = []
    for i in arr:
        if i % divisor == 0:
            answer.append(i)
    if len(answer) == 0:
        return [-1]
    answer.sort()
    return answer
for문으로 배열 순회 for i in arr:
     if i % divisor = 0:
           answer.append(i)
→ 이때 return을 넣으면 루프가 조건 만족하는 값 하나만 넣고 끝나버림
if len(answer) == 0:
return [-1]
나누어 떨어지는 원소가 없을 때
= answer가 아무 원소도 안 담고 있을 때
= answer가 비어 있을 때
= if len(answer) == 0
*len(answer)는 리스트 answer의 길이(원소개수)를 반환
answer.sort() 오름차순 정렬을 요구했으므로, .sort() 필요

 

리스트 컴프리헨션 풀이

def solution(arr, divisor):
    answer = [i for i in arr if i % divisor == 0]
    if not answer:
        return [-1]
    return sorted(answer)
for i in arr if i % divisor == 0 arr의 모든 원소 i에 대해
i % divisor == 0 즉 divisor로 나눠 떨어지는 경우만
answer = i  i 를 리스트에 포함시켜 answer리스트를 만듦
if not answer: if not을 통해 리스트가 비어있는지 확인하는 것
sorted(answer) sorted()을 통해 정렬

 

★오답노트 

나누어 떨어지는 원소가 없을 때

if len(answer) == 0:
 return [-1] 을 생각하지 못하였다.

 

<SQL>

고양이와 개는 몇마리있을까?

동물 보호소에 들어온 동물 중 고양이와 개가 각각 몇 마리인지 조회하는 SQL문을 작성. 이때 고양이를 개보다 먼저 조회

select animal_type,
       count(*) as count
from animal_ins
group by animal_type
order by animal_type

 

코드카타 후 나머지 시간은 또 기초 프로젝트 결과보고서를 작성하는데 사용했습니다!

월요일 발표이고 또 주말은 좀 쉬고 싶은 마음에 열심히 달려서 오늘까지 마무리를 했습니다!!!!

월요일에 발표 리허설 진행해보고 오후에 발표하면 좋을 거 같아요!

우여곡절 많았지만 완성도 있는 프로젝트를 한 것 같아서 뿌듯하기도 하고 기쁘기도 하고 그간 힘들었고 피곤했던 게 싹 내려가는 느낌이에요 ㅋㅋㅋㅋㅋ

오늘도 수고 많으셨습니다!!