Skip to content

Instantly share code, notes, and snippets.

@metaxy
Created August 25, 2011 10:15
Show Gist options
  • Save metaxy/1170380 to your computer and use it in GitHub Desktop.
Save metaxy/1170380 to your computer and use it in GitHub Desktop.
Billige Türme von Hanoi
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static int[] r1 = new int[4];
static int[] r2 = new int[4];
static int[] t1 = new int[4];
static int[] t2 = new int[4];
static void show()
{
System.Console.WriteLine("");
for (int i = 0; i < 4; i++)
{
if (r2[i] != 0)
System.Console.Write(" " + r2[i] + " ");
else
System.Console.Write(" ");
}
System.Console.WriteLine("");
for (int i = 0; i < 4; i++)
{
if (r1[i] != 0)
System.Console.Write(" " + r1[i] + " ");
else
System.Console.Write(" x ");
}
System.Console.WriteLine("");
System.Console.ReadLine();
}
static void Main(string[] args)
{
r1[0] = 1;
r1[1] = 2;
r1[2] = 3;
r1[3] = 4;
r2[0] = 0;
r2[1] = 0;
r2[2] = 0;
r2[3] = 0;
t1[0] = 4;
t1[1] = 2;
t1[2] = 3;
t1[3] = 1;
t2[0] = 0;
t2[1] = 0;
t2[2] = 0;
t2[3] = 0;
solve();
System.Console.ReadLine();
}
static void solve()
{
if (fertig())
{
System.Console.WriteLine("Fertig");
show();
return;
}
//can we do a swap
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; j++)
{
if (r1[i] == t1[j] && r1[j] == t1[i])
{
System.Console.WriteLine("Jo we can swap");
}
}
}
}
static void swap(int i, int j)
{
//move i to !j
int newpos;
}
static bool fertig()
{
for (int i = 0; i < 4; i++)
{
if (r1[i] != t1[i])
return false;
}
for (int i = 0; i < 4; i++)
{
if (r2[i] != t2[i])
return false;
}
return true;
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment