A program that takes a set of tetrominoes and fills them in the smallest square possible. This solution was achieved by using recursive backtracking from the top left corner.
valid format
£... #... .... ....
£... #... ##.. ###.
££.. #... ##.. .#..
.... #... .... ....
output
./fillit samples/test_8
.AABB..
AACCB..
.CC.BDD
.EE.DD.
EEFFGG.
.FFGGHH
....HH.