알고리즘61 [프로그래머스/Python] 수박수박수박수박수박수? [프로그래머스/Python] 수박수박수박수박수박수? ● 문제 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. ● 소스코드 def solution(n): answer = '' str = '수박' * 5000 answer = str[0:n] return answer ● 풀이 특별한 알고리즘은 없다. 충분히 긴 수박 문자열을 만들어두고 필요한만큼 반환해준다. * https://programmers.co.kr/learn/courses/30/lessons/12954 코딩테스트 연습 - 수박수박수박수박수박수? 길이가 n이고, "수박수박수박수...."와 같은 패턴.. 2021. 10. 9. [프로그래머스/Python] 최대공약수와 최소공배수 [프로그래머스/Python] 최대공약수와 최소공배수 ● 문제 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. ● 소스코드 from math import gcd def solution(n, m): answer = [] answer.append(gcd(n,m)) answer.append(n*m//gcd(n,m)) return answer ● 풀이 특별한 알고리즘은 없다. math 패키지의 gcd 함수를 사용하면 두 정수의 최대공약수를 구할 수 있다. .. 2021. 10. 9. [프로그래머스/Python] 제일 작은 수 제거하기 [프로그래머스/Python] 제일 작은 수 제거하기 ● 문제 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. ● 소스코드 def solution(arr): answer = [] if len(arr) == 1: answer.append(-1) else: answer = arr answer.remove(min(arr)) return answer ● 풀이 특별한 알고리즘은 없다. min 함수를 사용하여 list 내의 최솟값을 구할 수 있다. remove 함수를 사용하.. 2021. 10. 9. [프로그래머스/Python] 정수 제곱근 판별 [프로그래머스/Python] 정수 제곱근 판별 ● 문제 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. ● 소스코드 from math import sqrt def solution(n): answer = 0 if n == (sqrt(n) // 1) ** 2: answer = (sqrt(n) + 1) ** 2 else: answer = -1 return answer ● 풀이 특별한 알고리즘은 없다. math package의 sqrt 함수를 사용하면 제곱근을 구할 수 있다. * https://programmers.co.kr/learn/c.. 2021. 10. 9. [프로그래머스/Python] 자릿수 더하기 [프로그래머스/Python] 자릿수 더하기 ● 문제 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. ● 소스코드 def solution(n): answer = 0 for i in str(n): answer += int(i) return answer ● 풀이 특별한 알고리즘은 없다. 정수를 string으로 바꾼뒤 모든 자릿수를 더해준다. * https://programmers.co.kr/learn/courses/30/lessons/12931 코딩테스트 연습 - 자릿수 더하기 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수.. 2021. 10. 9. [프로그래머스/Python] 약수의 합 [프로그래머스/Python] 약수의 합 ● 문제 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. ● 소스코드 def solution(n): answer = 0 for i in range(1,n+1): if n % i == 0: answer += i return answer ● 풀이 특별한 알고리즘은 없다. 1 ~ n 까지의 수 중 n의 약수를 찾아 모두 더한다. * https://programmers.co.kr/learn/courses/30/lessons/12928 코딩테스트 연습 - 약수의 합 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 사항 n은 0 이상 3000이하인 정수입니다. 입출력 예 n .. 2021. 10. 9. 이전 1 2 3 4 5 6 7 ··· 11 다음