/*
 * This code is from "Algorithms in C, Third Edition,"
 * by Robert Sedgewick, Addison Wesley Longman, 1998.
 */
#include <stdio.h>
#include <stdlib.h>

void hanoi(int, int);
void shift(int, int);

int main(int argc, char * argv[])
{
  int N=atoi(argv[1]);

  hanoi(N, 1);

  return 0;
}

void hanoi(int N, int d)
  {
    if (N == 0) return;
    hanoi(N-1, -d);
    shift(N, d);    
    hanoi(N-1, -d);
  }  

void shift(int N, int d)
{
  printf("Disco %d: %d\n", N, d);
}
