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 methods init and nextDay, this doesn't affect the way your solution works when being submitted to our server.
To simulate a single test case, your program should implement the following protocol (each integer/string is to be read from / printed in a separate line):
In other words, you should implement the following pseudocode in the main method of your solution:
boardSize = parseInt(readLine()) salary = parseInt(readLine()) snowFine = parseInt(readLine()) init(boardSize, salary, snowFine) for (t=0; t < 2000; t++) snowCnt = parseInt(readLine()) for (i=0; i < 2*snowCnt; i++) snowFalls[i] = parseInt(readLine()) ret = nextDay(snowFalls) printLine(length(ret)) for (i=0; i < length(ret); i++) printLine(ret[i]) flush(stdout)
In order to run the tester / visualizer, you should use the following command:
java -jar SnowCleaningVis.jar -exec "<command>"
<command> is the command you would use to execute your solution. If your compiled solution is an executable file, the command will just 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 parameters (all are optional):
Visualizer works in two modes. In regular mode, days are visualized one after another with a delay specified with -delay parameter. In paused mode, the next day will be visualized only when you press any key (except space). The space key can be used to switch between regular and paused modes. The default starting mode is regular. You can use -pause parameter to start in paused mode.
Cell colors in the visualizer have the following meaning:
You can print any debug information of your solution to the standard error stream and it will be forwarded to the standard output of the tester.
For more information on using visualizers, please check the following recipe draft from TopCoder Cookbook. Note that this is not a troubleshooting thread, please use the match forum for questions instead.