diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..2e52e28f73077f0ea9ddeaf996aae920822411d5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,81 @@ + +# Created by https://www.toptal.com/developers/gitignore/api/c,visualstudiocode +# Edit at https://www.toptal.com/developers/gitignore?templates=c,visualstudiocode + +### C ### +# Prerequisites +*.d + +# Object files +*.o +*.ko +*.obj +*.elf + +# Linker output +*.ilk +*.map +*.exp + +# Precompiled Headers +*.gch +*.pch + +# Libraries +*.lib +*.a +*.la +*.lo + +# Shared objects (inc. Windows DLLs) +*.dll +*.so +*.so.* +*.dylib + +# Executables +*.exe +*.out +*.app +*.i*86 +*.x86_64 +*.hex + +# Debug files +*.dSYM/ +*.su +*.idb +*.pdb + +# Kernel Module Compile Results +*.mod* +*.cmd +.tmp_versions/ +modules.order +Module.symvers +Mkfile.old +dkms.conf + +### VisualStudioCode ### +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +*.code-workspace + +# Local History for Visual Studio Code +.history/ + +### VisualStudioCode Patch ### +# Ignore all local history of files +.history +.ionide + +# Support for Project snippet scope +!.vscode/*.code-snippets + +# End of https://www.toptal.com/developers/gitignore/api/c,visualstudiocode + +# Custom gitignore for project +puissance \ No newline at end of file diff --git a/README.md b/README.md index e1cb64a389e6f1744031ac484ffa4f3f725f49dc..29e3b2e423012d5d775b814db7e32132b8450671 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,25 @@ # progseq-puissance4 -10e travail pratique du cours de programmation séquentielle, 1er année (2021-2022). \ No newline at end of file +- **Class** : Programmation séquentielle en C +- **Creation date** : 14 décembre 2021 +- **Description** : 10e travail pratique + +## Makefile configuration + +### Compile the project +> `make` + +Use this command to compile the project. + +### Clean the project +> `make clean` + +Use this command to clean the project. + +### Run the tests +> `make test` +> +> `./test` + +Use this command to compile and start the tests. + diff --git a/main.c b/main.c new file mode 100644 index 0000000000000000000000000000000000000000..b651b1289c1bd511537e744ff6f505016a0f2221 --- /dev/null +++ b/main.c @@ -0,0 +1,14 @@ +/* Author : Dario GENGA + * Date : 14.12.2021 + * Description : The power 4 game + */ + +#include <stdio.h> +#include <stdlib.h> +#include "puissance.h" + +int main() { + + + return EXIT_SUCCESS; +} diff --git a/makefile b/makefile new file mode 100644 index 0000000000000000000000000000000000000000..86ccf0e709171408d7bd94df087555e53e3db3da --- /dev/null +++ b/makefile @@ -0,0 +1,12 @@ +LIB=-lm +CC=gcc -Wall -Wextra -g + +puissance: puissance.o main.o + $(CC) $^ -fsanitize=address -fsanitize=leak -o $@ $(LIB) + +puissance.o: puissance.c puissance.h + $(CC) -c $< $(LIB) +main.o: main.c + $(CC) -c $< $(LIB) +clean: + rm -f *.o puissance test \ No newline at end of file diff --git a/puissance.c b/puissance.c new file mode 100644 index 0000000000000000000000000000000000000000..010f54d50d323211fde103df547823eab600a6d2 --- /dev/null +++ b/puissance.c @@ -0,0 +1,7 @@ +/* Author : Dario GENGA + * Date : 14.12.2021 + * Description : The power 4 game + */ + +#include "puissance.h" +#include <stdio.h> diff --git a/puissance.h b/puissance.h new file mode 100644 index 0000000000000000000000000000000000000000..bf975a03ad017268157ba421b173760a9abf7311 --- /dev/null +++ b/puissance.h @@ -0,0 +1,12 @@ +/* Author : Dario GENGA + * Date : 14.12.2021 + * Description : The power 4 game + */ + +#ifndef _PUISSANCE_H +#define _PUISSANCE_H +#include <stdio.h> +#include <stdlib.h> +#include <stdbool.h> + +#endif \ No newline at end of file diff --git a/skeleton_for_students/Makefile b/skeleton_for_students/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..57c7cd62f3d1b3b3db4cf8b9d50106740c620218 --- /dev/null +++ b/skeleton_for_students/Makefile @@ -0,0 +1,9 @@ +puissance4: + @echo "first rule which must create the puissance4 executable" + +clean: + @echo "this rule must clean everything up (including candidate files in testbed)" + $(MAKE) -C testbed clean + +tests: puissance4 + $(MAKE) -C testbed \ No newline at end of file diff --git a/skeleton_for_students/puissance4 b/skeleton_for_students/puissance4 new file mode 100755 index 0000000000000000000000000000000000000000..c73ed624297549082e6abff83ff60652fc3c34c8 Binary files /dev/null and b/skeleton_for_students/puissance4 differ diff --git a/skeleton_for_students/testbed/2players/Makefile b/skeleton_for_students/testbed/2players/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..2175d168849f6b54e2b4dcecd1ec5faea9a38740 --- /dev/null +++ b/skeleton_for_students/testbed/2players/Makefile @@ -0,0 +1,7 @@ +include ../common.mk + +EXE=../../puissance4 3 6 7 + +title: + @echo "=============[2 player tests]=============" + diff --git a/skeleton_for_students/testbed/2players/test1.in b/skeleton_for_students/testbed/2players/test1.in new file mode 100644 index 0000000000000000000000000000000000000000..5a09fe75d4bec66d80abd5d418a6e454f0859390 --- /dev/null +++ b/skeleton_for_students/testbed/2players/test1.in @@ -0,0 +1 @@ +4 1 4 1 4 1 4 diff --git a/skeleton_for_students/testbed/2players/test1.ref b/skeleton_for_students/testbed/2players/test1.ref new file mode 100644 index 0000000000000000000000000000000000000000..a40fe3f71b2d5a427f7f139a437e8e9a076f7a6e --- /dev/null +++ b/skeleton_for_students/testbed/2players/test1.ref @@ -0,0 +1,121 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │X│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Player one won! diff --git a/skeleton_for_students/testbed/2players/test2.in b/skeleton_for_students/testbed/2players/test2.in new file mode 100644 index 0000000000000000000000000000000000000000..e0c37d39839197eaf3c591ebb4a009f05e941c93 --- /dev/null +++ b/skeleton_for_students/testbed/2players/test2.in @@ -0,0 +1 @@ +1 1 2 2 3 3 4 diff --git a/skeleton_for_students/testbed/2players/test2.ref b/skeleton_for_students/testbed/2players/test2.ref new file mode 100644 index 0000000000000000000000000000000000000000..a8ff64e733c319b5fd9abebdc7524e90141d03a2 --- /dev/null +++ b/skeleton_for_students/testbed/2players/test2.ref @@ -0,0 +1,121 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│X│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Player one won! diff --git a/skeleton_for_students/testbed/2players/test3.in b/skeleton_for_students/testbed/2players/test3.in new file mode 100644 index 0000000000000000000000000000000000000000..952b0a4b745a6ad24b91c45e60e05808b8a618f2 --- /dev/null +++ b/skeleton_for_students/testbed/2players/test3.in @@ -0,0 +1 @@ +1 2 3 4 3 4 3 4 2 1 4 diff --git a/skeleton_for_students/testbed/2players/test3.ref b/skeleton_for_students/testbed/2players/test3.ref new file mode 100644 index 0000000000000000000000000000000000000000..f9eba0cb5ff80edb36510aa405037f018c69966c --- /dev/null +++ b/skeleton_for_students/testbed/2players/test3.ref @@ -0,0 +1,181 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Player one won! diff --git a/skeleton_for_students/testbed/2players/test4.in b/skeleton_for_students/testbed/2players/test4.in new file mode 100644 index 0000000000000000000000000000000000000000..5e93e4b751c2decf782b66a9396302b64b524035 --- /dev/null +++ b/skeleton_for_students/testbed/2players/test4.in @@ -0,0 +1 @@ +1 1 1 1 2 4 3 3 2 2 diff --git a/skeleton_for_students/testbed/2players/test4.ref b/skeleton_for_students/testbed/2players/test4.ref new file mode 100644 index 0000000000000000000000000000000000000000..81602525b3f80603466f1d1bd63e49685e651884 --- /dev/null +++ b/skeleton_for_students/testbed/2players/test4.ref @@ -0,0 +1,166 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Player two won! diff --git a/skeleton_for_students/testbed/2players/test5.in b/skeleton_for_students/testbed/2players/test5.in new file mode 100644 index 0000000000000000000000000000000000000000..456c4881e6b3c4b34b3e817b55fa9c9905971bd3 --- /dev/null +++ b/skeleton_for_students/testbed/2players/test5.in @@ -0,0 +1 @@ +1 2 3 4 5 6 7 2 3 4 5 6 7 3 4 5 6 7 4 5 6 7 5 6 7 6 7 1 2 1 3 2 1 4 3 2 1 4 3 2 1 5 diff --git a/skeleton_for_students/testbed/2players/test5.ref b/skeleton_for_students/testbed/2players/test5.ref new file mode 100644 index 0000000000000000000000000000000000000000..52cf289aeba19f2aad00146cff2c14ad89c11040 --- /dev/null +++ b/skeleton_for_students/testbed/2players/test5.ref @@ -0,0 +1,646 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│O│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│O│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │O│ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │X│O│ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │O│X│O│ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│X│O│X│O│ │O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│X│O│X│O│O│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│X│O│X│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│X│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│X│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +It is a draw. diff --git a/skeleton_for_students/testbed/Makefile b/skeleton_for_students/testbed/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..c124c27fcc48ddb27f2e6d2abae6ab43e20eca20 --- /dev/null +++ b/skeleton_for_students/testbed/Makefile @@ -0,0 +1,11 @@ +all: + $(MAKE) -C 2players + $(MAKE) -C rand_ai + $(MAKE) -C smart_ai + +clean: + $(MAKE) -C 2players $@ + $(MAKE) -C rand_ai $@ + $(MAKE) -C smart_ai $@ + +.PHONY: clean diff --git a/skeleton_for_students/testbed/common.mk b/skeleton_for_students/testbed/common.mk new file mode 100644 index 0000000000000000000000000000000000000000..5faa43d86d7ecac1bcc22e27e39214f1e3149bb1 --- /dev/null +++ b/skeleton_for_students/testbed/common.mk @@ -0,0 +1,19 @@ +INPUTS=$(wildcard *.in) +REFS=$(wildcard *.ref) +CANDIDATES=$(REFS:%.ref=%.cand) + +all: title clean $(CANDIDATES) + +tests: $(INPUTS) $(REFS) + @echo $(CANDIDATES) + +%.cand: %.in %.ref + @echo $* + @cat $< | $(EXE) > $@ + -@cmp -s $*.ref $@ + @echo "-----------------------------" + +clean: + @rm -f *.cand + +.PHONY: clean \ No newline at end of file diff --git a/skeleton_for_students/testbed/rand_ai/Makefile b/skeleton_for_students/testbed/rand_ai/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..1ae4cc3da0ad5e719dc71f3e55b23223e4135057 --- /dev/null +++ b/skeleton_for_students/testbed/rand_ai/Makefile @@ -0,0 +1,7 @@ +include ../common.mk + +EXE=../../puissance4 1 6 7 + +title: + @echo "=============[random AI tests]=============" + diff --git a/skeleton_for_students/testbed/rand_ai/test1.in b/skeleton_for_students/testbed/rand_ai/test1.in new file mode 100644 index 0000000000000000000000000000000000000000..ac6474af4055d31655005b8314c16a90d2162c3b --- /dev/null +++ b/skeleton_for_students/testbed/rand_ai/test1.in @@ -0,0 +1 @@ +1 1 1 1 diff --git a/skeleton_for_students/testbed/rand_ai/test1.ref b/skeleton_for_students/testbed/rand_ai/test1.ref new file mode 100644 index 0000000000000000000000000000000000000000..e28c57bd4e8cffd0bfdedc84a65dc03cd6d93011 --- /dev/null +++ b/skeleton_for_students/testbed/rand_ai/test1.ref @@ -0,0 +1,118 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Player one won! diff --git a/skeleton_for_students/testbed/rand_ai/test2.in b/skeleton_for_students/testbed/rand_ai/test2.in new file mode 100644 index 0000000000000000000000000000000000000000..c32f45a4b8bd1ecb65851e0f97f3983892f1f9e8 --- /dev/null +++ b/skeleton_for_students/testbed/rand_ai/test2.in @@ -0,0 +1 @@ +2 3 4 1 \ No newline at end of file diff --git a/skeleton_for_students/testbed/rand_ai/test2.ref b/skeleton_for_students/testbed/rand_ai/test2.ref new file mode 100644 index 0000000000000000000000000000000000000000..94e7f63ae668cfb8fe45f35d7e57f2e63d9db534 --- /dev/null +++ b/skeleton_for_students/testbed/rand_ai/test2.ref @@ -0,0 +1,118 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│X│ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│X│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│X│X│O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│X│X│O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│X│O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Player one won! diff --git a/skeleton_for_students/testbed/rand_ai/test3.in b/skeleton_for_students/testbed/rand_ai/test3.in new file mode 100644 index 0000000000000000000000000000000000000000..ee54247e8ea7c4cbf620c972a8e2e77eab24b2d4 --- /dev/null +++ b/skeleton_for_students/testbed/rand_ai/test3.in @@ -0,0 +1 @@ +1 2 3 3 4 4 4 \ No newline at end of file diff --git a/skeleton_for_students/testbed/rand_ai/test3.ref b/skeleton_for_students/testbed/rand_ai/test3.ref new file mode 100644 index 0000000000000000000000000000000000000000..e856963e177dbeb2443a22199afe5a3c1ebcd274 --- /dev/null +++ b/skeleton_for_students/testbed/rand_ai/test3.ref @@ -0,0 +1,205 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Player one won! diff --git a/skeleton_for_students/testbed/rand_ai/test4.in b/skeleton_for_students/testbed/rand_ai/test4.in new file mode 100644 index 0000000000000000000000000000000000000000..2d68c3e9ad9588f624dea470c75e3837b9e52db8 --- /dev/null +++ b/skeleton_for_students/testbed/rand_ai/test4.in @@ -0,0 +1 @@ +7 6 6 5 5 1 \ No newline at end of file diff --git a/skeleton_for_students/testbed/rand_ai/test4.ref b/skeleton_for_students/testbed/rand_ai/test4.ref new file mode 100644 index 0000000000000000000000000000000000000000..2b346675c58781173979b46b50499e15cb08d256 --- /dev/null +++ b/skeleton_for_students/testbed/rand_ai/test4.ref @@ -0,0 +1,190 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │ │X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│ │O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│ │O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │O│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│ │O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│ │O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│ │O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│ │O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│O│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Computer won! diff --git a/skeleton_for_students/testbed/smart_ai/Makefile b/skeleton_for_students/testbed/smart_ai/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..d0d9a2095a22ac6f083a0b93a06e16844b8fc59d --- /dev/null +++ b/skeleton_for_students/testbed/smart_ai/Makefile @@ -0,0 +1,7 @@ +include ../common.mk + +EXE=../../puissance4 2 6 7 + +title: + @echo "=============[smart AI tests]=============" + diff --git a/skeleton_for_students/testbed/smart_ai/test1.in b/skeleton_for_students/testbed/smart_ai/test1.in new file mode 100644 index 0000000000000000000000000000000000000000..6bac72ddcca37530434d3f5f6ec82f572947fa70 --- /dev/null +++ b/skeleton_for_students/testbed/smart_ai/test1.in @@ -0,0 +1 @@ +1 1 1 2 4 4 2 3 4 diff --git a/skeleton_for_students/testbed/smart_ai/test1.ref b/skeleton_for_students/testbed/smart_ai/test1.ref new file mode 100644 index 0000000000000000000000000000000000000000..4f1e01992ed3f7b3e1b00121020f379603deb328 --- /dev/null +++ b/skeleton_for_students/testbed/smart_ai/test1.ref @@ -0,0 +1,263 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│O│X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│O│X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│O│X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│O│X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│O│X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│O│O│ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│O│X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Player one won! diff --git a/skeleton_for_students/testbed/smart_ai/test2.in b/skeleton_for_students/testbed/smart_ai/test2.in new file mode 100644 index 0000000000000000000000000000000000000000..a5adbd35490763b08f8d6ef20d9d536acb9d9bce --- /dev/null +++ b/skeleton_for_students/testbed/smart_ai/test2.in @@ -0,0 +1 @@ +1 2 1 3 \ No newline at end of file diff --git a/skeleton_for_students/testbed/smart_ai/test2.ref b/skeleton_for_students/testbed/smart_ai/test2.ref new file mode 100644 index 0000000000000000000000000000000000000000..b6e011dcb0da91e6976f752cc84b703097be140f --- /dev/null +++ b/skeleton_for_students/testbed/smart_ai/test2.ref @@ -0,0 +1,132 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│X│X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│O│O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Computer won! diff --git a/skeleton_for_students/testbed/smart_ai/test3.in b/skeleton_for_students/testbed/smart_ai/test3.in new file mode 100644 index 0000000000000000000000000000000000000000..6a233509c24365aa556325ed0772ca716bf9e97d --- /dev/null +++ b/skeleton_for_students/testbed/smart_ai/test3.in @@ -0,0 +1 @@ +1 2 3 4 5 6 7 5 \ No newline at end of file diff --git a/skeleton_for_students/testbed/smart_ai/test3.ref b/skeleton_for_students/testbed/smart_ai/test3.ref new file mode 100644 index 0000000000000000000000000000000000000000..515b4fd88ad56d6d51812f73d5ba4dd13594c4e5 --- /dev/null +++ b/skeleton_for_students/testbed/smart_ai/test3.ref @@ -0,0 +1,248 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│ │X│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│ │X│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│O│X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│O│X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│O│X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│O│X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │O│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │X│O│O│X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│X│O│O│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Computer won! diff --git a/skeleton_for_students/testbed/smart_ai/test4.in b/skeleton_for_students/testbed/smart_ai/test4.in new file mode 100644 index 0000000000000000000000000000000000000000..b476b1889c7167245a18b0654fdba8e15c195cb5 --- /dev/null +++ b/skeleton_for_students/testbed/smart_ai/test4.in @@ -0,0 +1 @@ +7 6 5 4 6 7 7 5 1 4 6 \ No newline at end of file diff --git a/skeleton_for_students/testbed/smart_ai/test4.ref b/skeleton_for_students/testbed/smart_ai/test4.ref new file mode 100644 index 0000000000000000000000000000000000000000..97e668c1b469b6942377d5da55e5d4dff4196e4b --- /dev/null +++ b/skeleton_for_students/testbed/smart_ai/test4.ref @@ -0,0 +1,335 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │ │X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │ │X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│ │O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│O│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │X│O│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │ │X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │X│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │X│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │X│X│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│X│X│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│X│X│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│ │ │O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│X│X│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│ │ │O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│X│X│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│O│ │O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│X│X│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│X│X│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│ │O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │X│ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│O│X│O│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │O│X│X│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│O│O│X│O│X│ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│O│X│O│X│X│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Computer won! diff --git a/skeleton_for_students/testbed/smart_ai/test5.in b/skeleton_for_students/testbed/smart_ai/test5.in new file mode 100644 index 0000000000000000000000000000000000000000..41bd03814e8fc1911b2cdead2e74ba6263e2de53 --- /dev/null +++ b/skeleton_for_students/testbed/smart_ai/test5.in @@ -0,0 +1 @@ +1 3 3 5 6 1 1 \ No newline at end of file diff --git a/skeleton_for_students/testbed/smart_ai/test5.ref b/skeleton_for_students/testbed/smart_ai/test5.ref new file mode 100644 index 0000000000000000000000000000000000000000..2e6a63f5d175f1efdeb513f673aa8bcdc3347f52 --- /dev/null +++ b/skeleton_for_students/testbed/smart_ai/test5.ref @@ -0,0 +1,219 @@ +Board size is 6x7 (rows x col) +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│ │ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │ │ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│ │X│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│ │ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│ │X│ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │X│ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │O│X│ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Column number? (starts at 1): +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│O│O│ │ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +┌─┬─┬─┬─┬─┬─┬─┐ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│ │ │ │ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│ │O│ │ │ │ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│ │X│X│ │ +├─┼─┼─┼─┼─┼─┼─┤ +│X│O│X│O│O│O│O│ +└─┴─┴─┴─┴─┴─┴─┘ + 1 2 3 4 5 6 7 +Computer won!