Un algoritmo tipo "floodfill" adattato in qualche maniera potrebbe fare al caso tuo.
Amaro C++, il gusto pieno dell'undefined behavior.
Regole del Forum