public static void main(String args[]){
        FillOsWIthXsIfSurroundedByXs fo = new FillOsWIthXsIfSurroundedByXs();
        char board[][] = {{'X','X','X','X'},
                          {'X','X','O','X'},
                          {'X','O','X','X'},
                          {'X','X','O','X'}};
        
        fo.solve(board);
    }
Date 04/17/2016
@author Tushar Roy

Given a 2D board containing 'X' and 'O', capture all regions surrounded by 'X'.
A region is captured by flipping all 'O's into 'X's in that surrounded region.

Reference
https://leetcode.com/problems/surrounded-regions/
src/com/interview/graph/FillOsWIthXsIfSurroundedByXs.java