본문 바로가기

프로그래머스 #파이썬 #Python

(6)
[프로그래머스/파이썬] Lv.1 두 정수 사이의 합 문제 설명 두 정수 a, b가 주어졌을 때, a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수 완성하기 제한사항 a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요. a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다. a와 b의 대소관계는 정해져있지 않습니다. 입출력 예 a b return 3 5 12 3 3 3 5 3 12 나의 풀이 def solution(a, b): answer = sum(range(a, b+1, 1)) or sum(range(b, a+1, 1)) return answer or 뒷 문장을 적지 않았을 때, a가 큰 값이면 에러가 나 or을 추가하여 역수를 취해줬다. 다른 사람의 풀이 def solution(a, b): if a > b: a, b = b, ..
[프로그래머스/파이썬] Lv.0 1로 만들기 문제 설명정수는 짝수라면 반으로 나누고, 홀수라면 1을 뺀 뒤 반으로 나누다보면 1이 된다.num_list : 정수들이 담긴 리스트num_list의 모든 원소를 1로 만들기 위해 필요한 나누기 연산의 횟수를 return 하는 함수 완성하기제한사항3 ≤ num_list의 길이 ≤ 151 ≤ num_list의 원소 ≤ 30입출력 예num_listresult[12,4,15,1,14]11 입출력 예 설명12는 3번, 4는 2번, 15는 3번, 1은 0번, 14는 3번의 연산이 필요하기 때문에 총 11번의 연산이 필요합니다.나의 풀이def solution(num_list): answer = 0 # 1이 되기 위한 횟수 for i in num_list: count = 0 ..
[프로그래머스/파이썬] Lv.0 짝수는 싫어요 문제 설명 매개변수 : 정수 n n 이하의 홀수가 오름차순으로 담긴 배열 return 하는 함수 완성하기. 제한사항 1 ≤ n ≤ 100 입출력 예 n result 10 [1,3,5,7,9] 15 [1,3,5,7,9,11,13,15] 입출력 예 설명 10 이하의 홀수가 담긴 배열 [1, 3, 5, 7, 9]를 return합니다. 15 이하의 홀수가 담긴 배열 [1, 3, 5, 7, 9, 11, 13, 15]를 return합니다. 나의 풀이 def solution(n): answer = [] for i in range(n+1): if i%2==1: answer += [i] return answer 인덱스는 0부터 시작하기 때문에 n+1까지 i를 반복한다. i를 2로 나눴을 때 나머지가 1이면 홀수이므로 a..
[프로그래머스/파이썬] Lv.0 다음에 올 숫자 문제 설명 common : 등차수열 혹은 등비수열인 매개변수 마지막 원소 다음에 올 숫자를 return 하는 함수 완성하기. 제한사항 2 < common의 길이 < 1,000 -1,000 < common의 원소 < 2,000 common의 원소는 모두 정수이다. 등차수열 혹은 등비수열이 아닌 경우는 없다. 등비수열인 경우 공비는 0이 아닌 정수이다. 입출력 예 common result [1,2,3,4] 5 [2,4,8] 16 입출력 예 설명 [1, 2, 3, 4]는 공차가 1인 등차수열이므로 다음에 올 수는 5이다. [2, 4, 8]은 공비가 2인 등비수열이므로 다음에 올 수는 16이다. 나의 풀이 def solution(common): # 등차수열인 경우 if common[1] - common[0] =..
[프로그래머스/파이썬] Lv.1 짝수와 홀수 문제 설명 함수 solution : 정수 num이 짝수일 경우 "Even"을, 홀수일 경우 "Odd"를 반환한다. 제한사항 num은 int 범위의 정수이다. 0은 짝수이다. 입출력 예 num return 3 "Odd" 4 "Even" 나의 풀이 def solution(num): if num%2==1: return "Odd" else: return "Even" 나머지 함수 %를 이용해 나머지가 1이면 홀수이니 "Odd"를, 1이 아니라면 짝수이니 "Even"을 리턴한다. 다른 사람의 풀이 def evenOrOdd(num): return ["Even", "Odd"][num & 1] 비트 연산자 '&' : 두 숫자의 비트를 비교하여 둘 다 1이면 결과가 1이다. 홀수는 비트가 1이다. 따라서 홀수이면 num&..
[프로그래머스/파이썬] Lv.1 정수 내림차순으로 배치하기 문제 설명 함수 solution : 정수 n을 매개변수로 입력 받아 n을 큰것부터 작은 순으로 정렬한 새로운 정수로 리턴. 예) n : 118372 ㅡ> 873211 리턴 제한사항 n : 1 이상 8,000,000,000 이하 자연수 입출력 예 n return 118372 873211 나의 풀이 def solution(n): answer = list(str(n)) answer.sort(reverse=True) return int(''.join(answer)) 내림차순 정렬을 위해 리스트의 메소드인 sort(reverse=True) 사용 이를 위해 정수인 입력값을 list(str(n)) 로 리스트화. 리스트로 바꾸고 sort(reverse=True)를 통해 내림차순 정렬 정수로 리턴해야 하기 때문에 ["8..