In order to use the offline tester / visualizer tool for testing your solution locally, you'll have to modify your solution
by adding the main method that interacts with the tester / visualizer via reading data from standard input and
writing data to standard output. As long as you do not change the implementation of method removePairs, this
doesn't affect the way your solution works when submitted to our server.
Here are example solutions for different languages, modified to be executed with visualizer. They all implement the same approach: find the first pair of horizontally adjacent tiles of the same color and remove them.
To run the tester with your solution, you should run:
java -jar Tester.jar -exec "<command>" -seed <seed>
Here, <command> is the command to execute your program,
and <seed> is seed for test case generation.
If your compiled solution is an executable file, the command
will be the full path to it, for example, "C:\TopCoder\solution.exe" or
"~/topcoder/solution". In case your compiled solution is to be run
with the help of an interpreter, for example, if you program in Java,
the command will be something like "java -cp C:\TopCoder Solution".
Additionally you can use the following options:
Finally, you can print any debug information of your solution to standard error,
and it will be forwarded to the standard out of the tester.
-manual : Turn on manual play mode. Click on a pair of tiles to remove them, click on "undo" button to revert the last removal (can revert more than one step), click on "ready" button to finish the game and get the score. This mode is enabled by default if no executable is provided; if the mode is enabled together with an executable, manual play mode will be turned on after all pairs returned by the solution are removed.
-novis : Turn off visualization.
-size <SZ> : Sets size of a tile for visualization.
-delay <delay> : Sets the delay (in milliseconds) between visualizing consecutive simulation steps. The default value is 100.
-debug : Print debug information during test run.