문제 설명 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요. 제한 사항 -행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다. 입출력 예 arr1 arr2 return [[1,2],[2,3]] [[3,4],[5,6]] [[4,6],[7,9]] [[1],[2]] [[3],[4]] [[4],[6]] 접근법 numpy를 사용하여 쉽게 더해보겠습니다. 각 리스트들을 numpy배열로 바꿔준 뒤, 더해주고, 다시 리스트로 바꿔주겠습니다. 나의 코드 import numpy def solution(arr1, arr2): return (n..
문제 설명 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한 사항 -arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 arr return [1,2,3,4] 2.5 [5,5] 5 접근법 리스트의 합을 구하는 sum()함수와 요소의 개수를 구하는 len()함수를 이용하여 평균을 구해보겠습니다. 나의 코드 def solution(arr): return sum(arr)/len(arr) 다른 코드 import numpy def solution(arr): return numpy.mean(arr) numpy라이브러리를 사용하면 numpy의 mean함수를 이용하여 쉽게 구할 수 있습니다.
문제 설명 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. 제한 사항 -x는 -10000000 이상, 10000000 이하인 정수입니다. -n은 1000 이하인 자연수입니다. 입출력 예 x n answer 2 5 [2,4,6,8,10] 4 3 [4,8,12] -4 2 [-4, -8] 접근법 음수, 양수, 0일때를 다르게 처리해야 합니다. 먼저 0일때는 0씩 증가하기 때문에 모든 요소가 0이 됩니다. 즉, 0인 요소를 n개 가지면 됩니다. 양수 같은 경우에는 range(x, x*n+1)로 설정해줘야 하고, 음수 같은 경우에는 range(x, ..
문제 설명 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. 제한 사항 -arr은 길이 1 이상인 배열입니다. -인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다. 입출력 예 arr return [4,3,2,1] [4,3,2] [10] [-1] 접근법 min()함수를 이용하여 리스트 내에 최소값을 찾고, 제거한 뒤 반환해 주겠습니다. 나의 코드 def solution(arr): arr.remove(min(arr)) return arr i..
문제 설명 함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 제한 사항 -n은 1이상 8000000000 이하인 자연수입니다. 입출력 예 n return 118372 873211 접근법 먼저 입력받은 정수를 리스트 형태로 바꾼 뒤, 내림차순으로 정렬하여 다시 하나의 정수로 변환하겠습니다. 나의 코드 def solution(n): answer = sorted(list(map(int,list(str(n)))),reverse=True) return int(''.join(list(map(str,answer)))) 다른 코드 def solution(n): return..
문제 설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한 사항 -N의 범위 : 100,000,000 이하의 자연수 입출력 예 N answer 123 6 987 24 접근법 입력받은 정수를 리스트로 바꿔서 리스트 요소의 합으로 간단하게 구해보겠습니다. 나의 코드 def solution(n): return sum(list(map(int,list(str(n)))))
문제 설명 정수 num이 짝수일 경우 Even을 반환하고 홀수인 경우 Odd를 반환하는 함수, solution을 완성해주세요. 제한 사항 -num은 int 범위의 정수입니다. -0은 짝수입니다. 입출력 예 num return 3 Odd 4 Even 접근법 입력받은 수를 2로 나눈 나머지를 이용하여 판별하겠습니다! 나의 코드 def solution(num): return "Even" if num%2 == 0 else "Odd" 이번문제는 굉장히 간단합니다!
문제 설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. 제한 사항 -n은 1이상, 50000000000000 이하인 양의 정수입니다. 입출력 예 n return 121 144 3 -1 입출력 예 설명 입출력 예#1 121은 양의 정수 11의 제곱이므로, (11+1)를 제곱한 144를 리턴합니다. 입출력 예#2 3은 양의 정수의 제곱이 아니므로, -1을 리턴합니다. 접근법 math 라이브러리의 제곱근을 구해주는 함수인 sqrt()를 사용하여 제곱근을 구하고, 정수인지 판별하는 .is_integer()를 통해 -1을 반환해줄지 ..
문제 설명 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 사항 -n은 10,000,000,000이하인 자연수입니다. 입출력 예 n return 12345 [5,4,3,2,1] 접근법 먼저 입력받은 정수를 하나씩 끊어서 리스트로 만든뒤 .reverse()함수를 사용하여 요소의 순서를 거꾸로 바꿔보겠습니다! 나의 코드 def solution(n): answer = list(map(int, list(str(n)))) answer.reverse() return answer list(map(int, 리스트))는 ['1', '2', '3']과 같이 문자를 요소로 가지는 리스트를 [1, 2, 3]과 같이 정수를 요..
문제 설명 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요. 제한 사항 -문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다. -첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다. 입출력 예 s return try hello world TrY HeLlO WoRlD 입출력 예 설명 try hello world는 세 단어 try, hello, world로 구성되어 있습니다. 각 단어의 짝수번째 문자를 대문자로, 홀수번째 문자를 소문자로 바꾸면 TrY, HeLl..