package problems.easy;
/**
* Created by sherxon on 5/5/17.
*/
public class PaintFill {
void paint(int[][] a, int i,int j, int color){
if(a.length ==0 || a[0].length == 0)return;
int orColor=a[i][j];
helper(a, i, j, color, orColor);
}
private void helper(int[][] a, int i, int j, int color, int orColor) {
if(i<0 || i>=a.length || j<0 || j>=a[i].length)return; // off limit
if(a[i][j]!=orColor)return; // different color start
a[i][j]=color;
helper(a, i+1, j, color, orColor);
helper(a, i-1, j, color, orColor);
helper(a, i, j+1, color, orColor);
helper(a, i, j-1, color, orColor);
}
}