Can someone help me with the logic on how to remove the letter 'W' inside the surrounding 1s in a 2d array. The outside 'W' will remain and shouldn't be change.
More likely, this is like a pathfinding, if there is no way towards the 'W', it will be deleted or change to the value of 0.
The starting point is at the right side.
From:
{ W, W, W, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
{ 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0}
{ 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0}
{ 0, 1, 1, 0, W, W, W, 0, 1, 1, 1, 1, 0}
{ 0, 1, 1, 0, w, w, w, 0, 1, 1, 1, 1, 0}
{ 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0}
{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}
{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
To:
{ W, W, W, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
{ 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0}
{ 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0}
{ 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0}
{ 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0}
{ 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0}
{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}
{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
From:
{ W, W, W, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0}
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0}
{ 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0}
{ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
{ 0, 1, 1, 0, W, W, W, 0, 0, 0, 0, 0, 0}
{ 0, 1, 1, 0, w, w, w, 0, 0, 0, 0, 0, 0}
{ 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}
{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
To:
{ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0}
{ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0}
{ 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0}
{ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
{ 1, 1, 1, 0, W, W, W, 0, 0, 0, 0, 0, 0}
{ 1, 1, 1, 0, w, w, w, 0, 0, 0, 0, 0, 0}
{ 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}
{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0}
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}