목록Algorithm (111)
S E P H ' S
코딩테스트 연습 - 3진법 뒤집기 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하인 자연수 programmers.co.kr 1. divmod : 몫과 나머지를 tuple로 반환하는 함수 2. 나머지를 str 형태로 이어붙이고 3. n에 새로운 몫을 계속 넣는다. 4. answer를 int형, 밑을 3으로 반환한다. def solution(n): answer = '' while n > 0: q, r = divmod(n, 3) answer += str(r) n = q return int(answer, base = 3)
코딩테스트 연습 - 내적 길이가 같은 두 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의 programmers.co.kr def solution(a, b): answer = 0 for i in range(len(a)): answer += a[i]*b[i] return answer
코딩테스트 연습 - 폰켓몬 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. programmers.co.kr def solution(nums): types = len(set(nums)) if len(nums) / 2 > types: return types else: reurn len(nums) / 2
코딩테스트 연습 - 약수의 개수와 덧셈 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주 programmers.co.kr 프로그래머스 문제를 풀면서 수학의 중요성을 다시 한번 깨닫게 해준 문제다. def divisor(n): nums = [] for i in range(1, n+1): if n % i == 0: nums.append(i) return len(nums) def solution(left, right): answer = 0 for i in range(left, right+1): if divisor(i) % 2 == 0:..