250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- AI 5기
- time()
- itertools
- googlesheet
- 데벨챌
- git #github #내일배움캠프
- 데이터리안
- WIL
- 가상환경
- 프로그래머스
- 그로스해킹
- 데이터넥스트레벨챌린지
- venv
- googleappscript
- gitignore
- 우선순위
- 함수실행시간
- cte
- python
- 함수성능평가
- Level1
- 내일배움캠프
- position
- iterable
- with\
- Display
- 알고리즘
- A태그
- vscode
- Iterator
Archives
- Today
- Total
05의 개발 계발
[페어프로그래밍] 230426 피보나치 수 | 다중할당 for 본문
728x90
페어프로그래밍 결과 코드
# 페어프로그래밍으로 제작한 코드
def solution(n):
answer = []
for i in range(n+1):
if i == 0 or i == 1:
answer.append(i)
else:
f = answer[i-1] + answer[i-2]
answer.append(f % 1234567) # f(n)%m-> m=1234567 수가 너무 커지기 때문에! 소수인 1234567 로 나눈것!
return answer[-1]
+테스트용 코드
더보기
import os
os.system("cls")
def solution(n):
answer = []
for i in range(n+1):
if i == 0 or i == 1:
answer.append(i)
else:
f = answer[i-1] + answer[i-2]
answer.append(f % 1234567) # f(n)%m-> m=1234567 수가 너무 커지기 때문에! 소수인 1234567 로 나눈것!
return answer[-1] # [0,1,1,2] [0,1,1,2,3,5]
# ===============테스트공간==================
n=3 #2
m=5 #5
l=1500 #1058440
print("정답2 |",solution(n))
print("정답5 |",solution(m))
print("정답1058440 |",solution(l))
리팩토링 코드
# 리팩토링 코드 | 다중할당 , for, range , 나머지 연산자 사용
def solution(n):
a,b=0,1
for _ in range(n):
a, b = b, (a+b)%1234567
return a
시사점 or 새로이 알게된 점
다중할당을 통해 피보나치 수의 재귀성을 함수로 구현해 보았다.
문제에서 요구하는 바가 피보나치 함수 구현이 아니라, 1234567로 나누는 것이기에 런타임에러가 나지만, 재귀함수를 써보았다.
def solution(n):
if n<2:
return n
return solution(n-2)+solution(n-1)
print(solution(n)%1234567)
728x90
'내일배움캠프 AI > 페어프로그래밍' 카테고리의 다른 글
[페어프로그래밍] 230428 옹알이(1) | count (0) | 2023.04.28 |
---|---|
[페어프로그래밍] 230428 모스부호(1) | .split (0) | 2023.04.28 |
[페어프로그래밍] 230426 문자열 정렬하기(2) | lower sorted join (0) | 2023.04.27 |
[페어프로그래밍] 230425 캐릭터의 좌표 | if for max min int / abs dict (0) | 2023.04.25 |
[페어프로그래밍] 230424 안전지대 | set for if len list range (0) | 2023.04.24 |