[파이썬] 프로그래머스 Lv0. n 번째 원소까지, n개 간격의 원소들, 홀수 vs 짝수
안녕하세요 머킹입니다.
오늘 오후에 자연어 처리 프로젝트 발표를 하는데
개인으로 해서 그런지 엄청나게 준비할 것들이 많네요!
피피티도 만들고 계속 코드도 돌리고...
모델은 많이 못돌릴 것 같아서 처음에 비교하고 싶다는 그런 목표는
추후에 계속 도전해볼 것 같습니다.ㅎㅎ
n 번째 원소까지
문제 설명
정수 리스트 num_list와 정수 n이 주어질 때,
num_list의 첫 번째 원소부터 n 번째 원소까지의 모든 원소를 담은 리스트를 return하도록 solution 함수를 완성해주세요.
def solution(num_list, n):
answer = []
append.answer(num_list[:n+1])
return answer
단순하게 append?라고 바로 떠올렸는데
아무래도 이 방법은 아닌 것 같습니다.
def solution(num_list, n):
return num_list[:n]
생각해보니까 더 단순한 방법이 있었습니다.ㅎㅎ
n개 간격의 원소들
문제 설명
정수 리스트 num_list와 정수 n이 주어질 때,
num_list의 첫 번째 원소부터 마지막 원소까지 n개 간격으로 저장되어있는 원소들을 차례로 담은 리스트를 return하도록 solution 함수를 완성해주세요.
def solution(num_list, n):
return num_list[::n]
이것도 위랑 비슷해서 되게 쉽게 풀었습니다.
홀수 vs 짝수
문제 설명
정수 리스트 num_list가 주어집니다.
가장 첫 번째 원소를 1번 원소라고 할 때, 홀수 번째 원소들의 합과
짝수 번째 원소들의 합 중 큰 값을 return 하도록 solution 함수를 완성해주세요.
두 값이 같을 경우 그 값을 return합니다.
def solution(num_list):
odd_sum = 0
even_sum = 0
for i in range(len(num_list)):
if i % 2 == 0:
even_sum += num_list[i]
else:
odd_sum += num_list[i]
return max(odd_sum, even_sum)
일단 짝수끼리 더할 변수와 홀수끼리 더할 변수를 정해두고
그다음에 리스트를 돌면서 if 문을 썼습니다.
이제 제가 생각하는 로직대로 답이 나와서 좀 신기한 것 같아요.
def solution(num_list):
return max(sum(num_list[::2]), sum(num_list[1::2]))
다른 사람들의 풀이가 궁금해서 항상 보는데
이런 풀이법도 있네요!
'오늘부터 코딩테스트' 카테고리의 다른 글
[오늘부터 코딩테스트]파이썬으로 프로그래머스 코딩 기초 프로그램 풀기 (0) | 2023.10.12 |
---|---|
[오늘부터 코딩테스트]파이썬으로 프로그래머스 코딩 기초 프로그램 풀기 (0) | 2023.10.11 |
[오늘부터 코딩테스트]파이썬으로 프로그래머스 코딩 기초 프로그램 풀기 (0) | 2023.10.06 |
[오늘부터 코딩테스트]파이썬으로 프로그래머스 코딩 기초 프로그램 풀기 (0) | 2023.10.06 |
[오늘부터 코딩테스트]프로그래머스 코딩 기초 프로그램 풀기 (0) | 2023.10.04 |