Practice 7 : 자료 구조

썩은 과일 찾기

과수원에 농부 한명이 썩은 과일이 몇개 들어있는 과일 봉지를 가지고 있다. (과일 봉지는 리스트를 의미한다.)

썩은 과일 조각들을 모두 신선한 것으로 교체하는 함수 change_rotten_fruit()를 작성하시오.

예를 들어,

  • ['apple', 'rottenBanana', 'apple'] 이라는 리스트가 주어진 경우, 대체된 리스트는 ['apple', 'banana', 'apple'] 이어야 한다.

유의

  • 만약 리스트가 null/nil/None이거나 비어 있는 경우 빈 리스트를 반환한다.

  • 반환된 리스트의 요소는 모두 소문자여야 한다.


예시)

change_rotten_fruit(['apple', 'rottenBanana', 'apple']) 
#=> ['apple', 'banana', 'apple']

change_rotten_fruit(['rottenapple', 'rottenBanana', 'apple', 'rottenGrape']) 
#=> ['apple', 'banana', 'apple', 'grape']
def change_rotten_fruit(fruit_bag):
    for idx in range(len(fruit_bag)):
        fruit_bag[idx] = fruit_bag[idx].replace('rotten', '')
    return fruit_bag if fruit_bag else []
# 해당 코드를 통해 올바른 결과가 나오는지 확인하시오.
print(change_rotten_fruit(['apple', 'rottenBanana', 'apple'] ))
print(change_rotten_fruit(['rottenapple', 'rottenBanana', 'apple', 'rottenGrape']))
['apple', 'Banana', 'apple']
['apple', 'Banana', 'apple', 'Grape']

중복되지 않은 숫자의 합

같은 숫자가 한개 있거나 두개가 들어있는 리스트가 주어진다. 이러한 리스트에서 숫자가 한개만 있는 요소들의 합을 구하는 함수 sum_of_repeat_number()를 작성하시오.

예를 들어, [4, 5, 7, 5, 4, 8]는 7과 8이 한번만 나오기 때문에 두개를 더한 15가 결과값으로 도출된다.


예시)

sum_of_repeat_number([4, 4, 7, 8, 10]) # => 25
def sum_of_repeat_number(numbers):
    result = 0
    for number in set(numbers):
        if numbers.count(number) == 1:
            result += number
    return result
# 해당 코드를 통해 올바른 결과가 나오는지 확인하시오.
print(sum_of_repeat_number([4, 4, 7, 8, 10]))
25