취준일기

[TIL_알고리즘] 하노이 타워(Hanoi towers)와 피보나치 (Fibonacci Number)

둉영 2020. 11. 17. 13:56

하노이 타워(Hanoi towers)

 

n(원반개수)/ from(출발지)/ to(도착지)/ spare(임시공간)

 

def Hanoi(n,ffrom,to,spare):

  if n==1:

    print(ffrom+"에서"+to+"로 이동")

    return

  Hanoi(n-1,ffrom,spare,to)

  Hanoi(1,ffrom,to,spare)

  Hanoi(n-1,spare,to,ffrom)

 

Hanoi(3,'from','to','spare')

 

# from에서to로 이동

# from에서spare로 이동

# to에서spare로 이동

# from에서to로 이동

# spare에서from로 이동

# spare에서to로 이동

# from에서to로 이동

 

 

피보나치 (Fibonacci Number)

 

def Fibonacci(n):

  if n==1return 1

  if n==2return 1

  return Fibonacci(n-1)+Fibonacci(n-2)

 

print(Fibonacci(10)) #55