문제 설명 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. 제한 조건 arr은 길이 1 이상인 배열입니다. 인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다. 💡 나의 풀이 def solution(arr): answer = [] minVal = min(arr) arr.remove(minVal) if not arr: arr.insert(0,-1) return arr arr 배열에서 가장 작은 수를 찾는 함수 min()을 사용하여 minVal..
문제 설명 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요. 제한 조건 x는 1 이상, 10000 이하인 정수입니다. 💡 나의 풀이 def solution(x): arr = list(str(x)) sum_ = 0 for i in range(len(arr)): sum_ += int(arr[i]) if x % sum_ == 0: answer = True else: answer = False return answer 자연수 x를 string으로 치환하여 list 형식으로 arr에 담았다..
문제 설명 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 AB는 1만큼 밀면 BC가 되고, 3만큼 밀면 DE가 됩니다. z는 1만큼 밀면 a가 됩니다. 문자열 s와 거리 n을 입력받아 s를 n만큼 민 암호문을 만드는 함수, solution을 완성해 보세요. 제한 조건 공백은 아무리 밀어도 공백입니다. s는 알파벳 소문자, 대문자, 공백으로만 이루어져 있습니다. s의 길이는 8000이하입니다. n은 1 이상, 25이하인 자연수입니다. 💡 나의 풀이 처음엔 비트연산자인 shift 방식으로 생각했었다. 시도했다가 아닌 것 같아서 아스키코드로 치환해서 풀어야겠다고 생각했다. 문자열을 아스키코드 값으로 변환해주는 ord(string)을 사용..
문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 💡 나의 풀이 처음엔 for문을 p,c 둘다 돌려서 p에서 c를 빼려고 했는데 파이썬다..
문제 설명 길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다. 제한 조건 n은 길이 10,000이하인 자연수입니다. 💡 나의 풀이 def solution(n): return ('수박'*n) [:n] '수박' * n --> 입력받은 n만큼 '수박' 반복 solution(3)이면 '수박수박수박' 이므로 slicing 필요 따라서 입력받은 n만큼 출력해주면 된다. [:n] 💡 다른 방식 def solution(n): answer = '' for i in range(n): if i % 2 == 0: answer += '수' else: answer += '박' return ..
문제 설명 String형 배열 seoul의 element중 Kim의 위치 x를 찾아, 김서방은 x에 있다는 String을 반환하는 함수, solution을 완성하세요. seoul에 Kim은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 제한 사항 seoul은 길이 1 이상, 1000 이하인 배열입니다. seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다. Kim은 반드시 seoul 안에 포함되어 있습니다. 💡 나의 풀이 def solution(seoul): answer = '' x = seoul.index('Kim') answer = '김서방은 '+str(x)+'에 있다' return answer index(value) 함수는 해당하는 문자열의 위치값을 반환해준다. list.in..