Ejemplo n.º 1
0
        //print it (enter seprated)
        public override string ToString()
        {
            /*
             * no stringbouldier:
             * 00:00:08.3074953
             * wiht stringbuilder:
             * 00:00:07.9234735
             * 10 nestigns
             * ..\..\data\genius131_data.txt ..\..\data\genius131_target.txt
             * */
            /*
             * StringRepresentation = "";
             * foreach (var r in data)
             * {
             * foreach (var c in r)
             * {
             *         StringRepresentation += MazeItemConvertion.ToString(c);
             * }
             * StringRepresentation += "-\n\r";
             * }
             */
            StringBuilder builder = new StringBuilder((2 + data.Count()) * (4 + data[0].Count()));

            foreach (var r in data)
            {
                foreach (var c in r)
                {
                    builder.Append(MazeItemConvertion.ToChar(c));
                }
                builder.Append("\n");
            }
            return(builder.ToString());
        }
Ejemplo n.º 2
0
        //loading it, error message thowrs exception
        public void Load(IEnumerable <string> src)
        {
            data = new List <List <MazeItem> >();
            foreach (var s in src)
            {
                List <MazeItem> row = new List <MazeItem>();
                foreach (var c in s)
                {
                    row.Add(MazeItemConvertion.FromString(c));
                }
                data.Add(row);
            }

            //check it is square
            foreach (var i in data)
            {
                if (i.Count() != data[0].Count())
                {
                    throw new ArgumentOutOfRangeException($"data is not square");
                }
            }
        }