▷ 코드카타

[내일배움캠프 _ QA/QC 5기] 25일차 _ 코드카타 28~30문항

qc-standard 2026. 4. 10. 16:09

⊙ 코드카타

28) 문제 : 0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.

제한 사항

: 1 ≤ numbers의 길이 ≤ 9

: 0   numbers의 모든 원소 ≤ 9

: numbers의 모든 원소는 서로 다릅니다

풀이 :


def solution(numbers):
    answer = 0 
    
    for i in range(10):
        if i not in numbers:
            answer += i
            
    return answer
●0부터 시작해야 숫자를 쌓을 수 있음

●0부터 9까지 숫자를 하나씩 확인합니다

●만약 i가 numbers 리스트 안에 없다면

●그 숫자를 answer에 더해준다

 

 

 

29) 문제 : 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.

제한 사항

: arr은 길이 1 이상인 배열입니다

: 인덱스 i,j에 대해 i ≠ j이면 arr[i] ≠ arr[i] 입니다

풀이:


def solution(arr):
    min_value = min(arr)
    arr.remove(min_value)
    if len(arr) == 0:
        return [-1]
    else:
        return arr
먼저 가장 작은 수가 무엇인지 알아낸다
리스트에서 그 작은 수를 제거한다
만약 리스트가 비어있다면 [-1]을, 아니라면 남은 리스트를 리턴한다

 

 

 

30) 문제 : 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.

제한사항

: s는 길이가 1 이상, 100이하인 스트링입니다.

풀이:


def solution(s):
    length = len(s)
    center = length // 2
    
    if length % 2 == 1:
        return s[center]
    else:
        return s[center - 1 : center + 1]
● 길이를 2로 나눈 몫(가운데 지점)

● 홀수라면 : 가운데 글자 하나만 쏙

● 짝수라면 : 가운데 앞글자와 가운데 글자 두개