파이썬 알고리즘-103 (프로그래머스) 숫자의 표현
코드
def solution(n):
answer = 0
# 왼쪽, 오른쪽 포인터 설정
lt,rt=0,1
# n의 중간값 +1 을 넘어가면 2개 이상을 선택했을 때 무조건 n보다 커지므로
# 중간값 +1 까지만 리스트를 설정
lst=[i for i in range(1,(n//2)+2)]
while rt<len(lst):
if sum(lst[lt:rt+1])==n:
answer+=1
rt+=1
elif sum(lst[lt:rt+1])<n:
rt+=1
else:
lt+=1
# 숫자 하나로 표현했을 경우를 더함
return answer+1
다른 사람의 풀이
def expressions(num):
return len([i for i in range(1,num+1,2) if num % i is 0])
Author And Source
이 문제에 관하여(파이썬 알고리즘-103 (프로그래머스) 숫자의 표현), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@jiffydev/파이썬-알고리즘-103-프로그래머스-숫자의-표현저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)