Lv0. 원소들의 곱과 합 (Python)
링크: 코딩테스트 연습 - 원소들의 곱과 합 | 프로그래머스 스쿨
내가 작성한 코드
def solution(num_list):
answer = 1
for n in num_list:
answer = answer * n
s = sum(num_list)
sum_square = s * s
if answer < sum_square:
return 1
else:
return 0
새로 배운 코드
def solution(num_list):
answer = 1 # 리스트 원소들의 곱을 저장할 변수
for n in num_list:
answer *= n # 원소들을 차례대로 곱함
return int(answer < sum(num_list) ** 2)
# 모든 원소들의 합을 제곱한 값이 answer보다 크면 1을, 작으면 0 반환
Lv1. 가운데 글자 가져오기 (Python)
링크: 코딩테스트 연습 - 가운데 글자 가져오기 | 프로그래머스 스쿨
내가 작성한 코드
def solution(s):
n = len(s)
if n % 2 == 1: #홀수
return s[n//2]
else: #짝수
return s[n//2-1 : n//2 + 1]
새로 배운 코드
def solution(str):
return str[(len(str)-1)//2 : len(str)//2 + 1]
# (len(str)-1)//2 :
# 문자열 길이가 홀수면 가운데 인덱스가 되고
# 짝수면 가운데 두 글자 중 왼쪽 글자의 인덱스가 됨
# 짝수일 때 시작점을 왼쪽으로 맞추기 위해 -1을 해줌
# len(str)//2 + 1
# 파이썬 슬라이싱은 끝 인덱스를 포함하지 않음. 따라서 +1
# 홀수면 가운데 글자 1개, 짝수면 가운데 2개가 잘려나가도록 끝 인덱스를 +1'코딩테스트' 카테고리의 다른 글
| [25.12.09 코테(Python)]-이어 붙인 수&콜라츠 추측 (0) | 2025.12.09 |
|---|---|
| [25.12.08 코테(Python)]-편지&약수의 개수와 덧셈&피보나치 수 (0) | 2025.12.08 |
| [25.12.04 코테(Python)]-최댓값과 최솟값&최솟값 만들기 (0) | 2025.12.04 |
| [25.12.03 코테(Python)]-짝수의 합&하샤드 수 (0) | 2025.12.03 |
| [25.12.02 코테(Python)]-대소문자 변환&JadenCase (0) | 2025.12.02 |