https://rosalind.info/problems/fibd/
ROSALIND | Mortal Fibonacci Rabbits
It appears that your browser has JavaScript disabled. Rosalind requires your browser to be JavaScript enabled. Mortal Fibonacci Rabbits solved by 12965 Wabbit Season Figure 1. A c.1905 photo from Australia of a cart loaded to the hilt with rabbit skins. Fi
rosalind.info
이 문제는 피보나치 토끼의 응용 문제이다. 이 문제는 토끼의 수명이 m달로 한정되어 있다. 태어난 첫달은 새끼인 상태라 생식이 불가하다. 그러니 한쌍의 토끼는 총 m달 동안 살고 m-1번 생식을 한다. 그림으로 요약하자면
토끼를 나이별로 나눠서 다음 세대에 어떻게 영향을 끼칠지를 코딩으로 나타내면 된다.
months,lifetime = map(int,input().split())
nowG=[0 for _ in range(lifetime)]
nowG[0]=1#첫 달
for _ in range(months-1):#m-1달 동안 반복
nextG=[0 for _ in range(lifetime)]
for i in range(lifetime):
if i!=0:#새끼가 아니라면 생식
nextG[0]=nextG[0]+nowG[i]
if i!=lifetime-1:#m살이 아니라면 나이가 들음
nextG[i+1]=nowG[i]
nowG = nextG
print(sum(nowG))
'문제해결(PS) > ROSALIND' 카테고리의 다른 글
Calculating Expected Offspring ( 기대 자식 계산하기) (0) | 2024.07.28 |
---|---|
Overlap Graphs (오버랩 그래프) (0) | 2024.07.28 |
Consensus and Profile(공통서열과 프로파일) (0) | 2024.07.26 |
Mendel's First Law(맨델의 첫 번째 법칙) (0) | 2024.07.21 |
Counting Point Mutations(점 돌연변이 세기) (0) | 2024.07.21 |