문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1]이면 [1, 3, 0, 1]을 return합니다. arr = [4, 4, 4, 3, 3]이면 [4, 3]을 return합니다. 핵심 아이디어 리스트의 양옆의 요소가 같으면 하나로 합치고, 다르면 반환한다. 첫 코드 def solution(arr): answer = [] answer.append(arr[0]) for i in range(0, len(arr)): if a..
문제 설명 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 첫 코드 def solution(s): s = s.lower() if s.count('p') == s.count('y'): answer = True elif s.count('p') != s.count('y'): answer = False else: answer = True return answer 개선된 코드 def solution(s): s = s.lower() if s.count('..
첫 코드 def solution(n): x = [] for i in range(1, n+1): if n % i == 0: x.append(i) answer = sum(x) return answer 개선된 코드 아래는 List comprehension으로 간략하게 쓴 코드입니다. def solution(n): return sum([i for i in range(1, n+1) if n % i == 0])
첫 코드 def solution(num): if num % 2 == 0: return("Even") else: return("Odd") 참고 코드 def solution(num): if num % 2 == 0: return 'Even' return 'Odd'
첫 코드 def solution(arr): answer = (sum(arr))/(len(arr)) return answer 참고 코드 넘파이 라이브러리 사용하여 함수를 만들 수도 있었다. import numpy as np def solution(arr): return np.mean(arr)
문제 설명 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. 첫 코드 def solution(x, n): answer = [] for i in range(1, n+1): temp = x*i answer.append(temp) return answer 개선된 코드 List Comprehension으로 간략하게 개선해 보았습니다. def solution(x, n): return [x * i for i in range(1, n + 1)]