using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace B015
{
class Program
{
static void Main(string[] args)
{
HanoiTower(4, 'A', 'B', 'C');
//교과서에서는 Hanoi(1,'A','C','B')
}
private static void HanoiTower(int n, char from, char via, char to)
{
if (n == 1)
Console.WriteLine("{0} -> {1}", from, to);
else
{
HanoiTower(n-1, from, to, via);
Console.WriteLine("{0} -> {1}", from, to);
HanoiTower(n - 1, via, from, to);
}
}
}
}
'C# > Foundation' 카테고리의 다른 글
기초 문제 01~15 (0) | 2024.03.03 |
---|---|
014.정수를 입력받아 재귀함수를 사용하여 팩토리얼을 계산하시오 (0) | 2021.04.14 |
013.9번 문제의 5층 피라미드 그리는 프로그램을 이용하여 n 층의 피라미드를 그리는 함수를 작성하여 3, 5, 7층의 피라미드를 그리시오 (0) | 2021.04.14 |
012.두개의 숫자 중 더 큰 숫자를 반환하는 Larger() 함수를 이용하여 세개의 숫자 중 가장 큰 수를 반환하는 프로그램을 작성하시오 (0) | 2021.04.14 |
011.10개의 숫자를 랜덤으로 만들어서 배열에 저장하고 크기 순서대로 출력하시오 (0) | 2021.04.14 |