From e6b6cd3751522fa78fc8cca842d61e18c2ddf7a7 Mon Sep 17 00:00:00 2001
From: Tamas Bunth <tamas.bunth@collabora.co.uk>
Date: Mon, 19 Mar 2018 13:01:28 +0100
Subject: [PATCH] Add readme file

---
 README.md | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 56 insertions(+)
 create mode 100644 README.md

diff --git a/README.md b/README.md
new file mode 100644
index 0000000..5bb111f
--- /dev/null
+++ b/README.md
@@ -0,0 +1,56 @@
+Sudoku elemek
+=============
+
+Feladvány
+---------
+
+Addot egy `NxN` méretű tábla. Ebbe a táblába kell elhelyezni pálcikákat úgy,
+hogy a táblát teljesen lefedje.
+
+Egy `m` hosszú pálcika `m` db különböző szimbolumot tartalmaz. Úgy kell
+elhelyezni a pálcikákat a táblában, hogy a tábla ne tartalmazzon olyan sort vagy
+oszlpot, ami két azonos szimbólumot tartalmaz.
+
+A pálcikák elforgathatóak és tükrözhetőek. Pl. a { 1, 2, 3 } elem ekvivalens a {
+3, 2, 1} pálcikával, és behelyezhető függőlegesen és vízszintesen is a táblába.
+
+Egy konkrét feladat
+-------------------
+
+Adott egy 5x5-ös tábla.
+
+Az pálcikáink a következőek (Jelen esetben 3 és 2 hosszú
+pálcikákat definiáltunk.)
+ 
+- 5, 4, 3 
+- 4, 1, 2, 
+- 3, 1, 2, 
+- 2, 1,
+- 5, 3, 
+- 4, 2, 3 
+- 5, 4, 1, 
+- 1, 3, 5, 
+- 2, 5, 4, 
+
+Algoritmus
+----------
+
+Az algoritmus a bactracking elvét követi.
+
+1. Inicializálunk egy üres táblát. Az elemekhez rendelünk egy sorrendet.
+
+2. A bal fölső sarokból az első üres helyre (az algoritmus elején ez pont a bal
+   fölső sarok, utána pedig olvasásirányba az első üres cella) elindulva megpróbálunk bepakolni egy pálcikát.
+   
+   - Ha a pálcikát sikeresen le tudtuk rakni, akkor folytatjuk a 2. lépésnél.
+
+   - Ha nem sikerült lerakni, akkor megváltoztatjuk az elem elhelyezkedését
+     (forgatjuk)
+
+   - Ha nem sikerült lerakni egyik állapotában sem, akkor új element próbálunk
+     lerarkni.
+
+   - Ha egyik pálcikát se sikerült lepakolni, akkor felvesszük az utoljára
+     letett pálcikát, és folytatjuk a 2. lépésnél.
+
+3. A feladvány akkor van kész, ha a tábla összes cellája foglalt.
-- 
GitLab