I. 390. Mobile apps-including various games-are getting more and more popular. One can make an app by using some free developer tools available under the three most popular mobile operating systems. Your task is to create a mobile app to play the following logic game.
The board consists of \(\displaystyle N\times N\) squares arranged in a grid; the two sides of each square have different colors (there are two colors altogether). If the player touches a square, its 4 neighbors (but not the actual square) will turn over, that is, their color will change to the opposite. The player wins when all squares have the same color. At the beginning of the game, the player should be able to set the board size (\(\displaystyle 3\le N\le 12\)); the application then should generate a random board coloring from which a final unicolor state can be reached. The executable version of your app (for Android, iOS or Windows Phone) and its full source, together with the web address of the chosen developer toolkit and a brief description of your steps designing the app, should be submitted in a compressed file (i390.zip).
Deadline expired on 11 January 2016.