목록전체 글 (214)
NIRVANA
문제 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요. 문제 풀이 접근법1 참고: https://yjs-program.tistory.com/324 [python] list 요소 2개씩 묶기 다음과 같이 짝수개 요소가 들어있는 list를 보고, 두개씩 짝지어서 return하고 싶을 때 간단한 기록용 #for문을 쓰면 직관적이지만, 깔끔하지 못함 test = [1, 2, 3, 4, 5, 6, 7, 8] new = [] for i in range(0, len(te yjs-program.tistory.com def solution(arr1, arr2..
문제 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 문제 접근법1 1) 문자열의 길이를 확인 한 뒤, 조건에 맞지 않으면 False를 return한다. 2) 알파벳 리스트를 만든 뒤, for문을 통해 알파벳이 문자열에 있는지 count 변수를 통해 확인한다. 3) count가 -1보다 크면 문자열에 알파벳이 있는 것이므로 False를 return한다. import string def solution(s): answer = True alpa = [i for i in string.ascii_letters ] if len(s) < 4 or len(s) ..
문제 새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이용료가 100이었다면 2번째에는 200, 3번째에는 300으로 요금이 인상됩니다. 놀이기구를 count번 타게 되면 현재 자신이 가지고 있는 금액에서 얼마가 모자라는지를 return 하도록 solution 함수를 완성하세요. 단, 금액이 부족하지 않으면 0을 return 하세요.제한사항 놀이기구의 이용료 price : 1 ≤ price ≤ 2,500, price는 자연수 처음 가지고 있던 금액 money : 1 ≤ money ≤ 1,000,000,000, money는 자연수 놀이기구의 이용 횟수 count..
문제 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다. 문제 풀이 접근법1 1) 문자열을 리스트로 형변환한다. 2) sort()를 사용하여 내림차순 정렬한다. 3) join()를 사용하여 리스트를 문자열로 합친뒤 반환한다. def solution(s): answer = '' list_s = list(s) list_s.sort(reverse=True) answer = ''.join(list_s) return answer sort()를 사용하면 대문자도 고려해서 정렬해준다는 걸 오늘 처음 알았다! 신기해 다른 분들 풀이 def solution(s): r..
문제 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요. 문제 접근법1 1) for문으로 left-right까지 반복한다 2) 이중 반복문을 사용하여 i % j 로 약수를 확인한다 (이때, j는 1부터 자기자신(i)+1까지 증가한다) 3) i % j == 0이면 count에 1을 더한다 4) count가 짝수이면 answer에 i를 더하고 count가 홀수이면 answer에 i를 뺀다. def solution(left, right): answer = 0 for i in range(left, right+1): count = 0 ..
문제 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이) 문제 풀이 접근법1 1) 리스트 a와 b의 길이 만큼 반복문을 진행하며 a[i]와 b[i]를 곱한뒤, 해당 값을 answer에 더한다. def solution(a, b): answer = 0 for i in range(len(a)): answer = answer + (a[i] * b[i]) return answer 다른 분들 풀이 def solution(a, b): return sum([x*y for x, y in zip(..