Selecting floors with no other floors/roof above

Hi there! I’m trying to obtain all the surface area being hit by rain in a building. This means I need to select not only all the roofs but also all the area outside that still belongs to the building (parking lots, grass, etc…). Currently I’m having problems separating the floors that are outside (parking lots and walkways) that need to be counted from the floor levels inside that obviously do not.

Can any one help regarding this?

Is this possible to do in Dynamo?