In order to do direct broadcast first we specify the NETWORK ID and then we put all 1's in HOST ID.
Give Direct Broadcast address : 200.200.200.31
Equivalent Decimal representation : 11001000. 11001000. 11001000. 00011111
One thing that we need to observe here that in 4th octet 00011111, here we don't have clarity that
out of these fives 1's, how many of them belongs to NETWORK ID?
One thing that we are sure about is that NETWORK ID is alteast 27-bits. NETWORK ID can be
of 27, 28, 29, 30, 31-bits.
NETWORK ID length can't be 32, because if it is 32-bits then it will no longer be Direct Broadcast
Address, it will become Limited Broadcast Address.
So, Differenet possiblities are :
11001000. 11001000. 11001000. 00011111
11001000. 11001000. 11001000. 00011111
11001000. 11001000. 11001000. 00011111
11001000. 11001000. 11001000. 00011111
11001000. 11001000. 11001000. 00011111
(Red Portion Represents NETWORK ID and Black Portion Belongs to HOST ID.)
NOTE : In order to find subnet mask we put all 1's in NETWORK ID and all 0's in HOST ID
Now, Put all 1's in NETWORK ID and all 0's in HOST ID in each possibility to get Subnet Mask
11111111. 11111111. 11111111. 11100000 $\equiv$ 255.255.255.224
11111111. 11111111. 11111111. 11110000 $\equiv$ 255.255.255.240
11111111. 11111111. 11111111. 11111000 $\equiv$ 255.255.255.248
11111111. 11111111. 11111111. 11111100 $\equiv$ 255.255.255.252
11111111. 11111111. 11111111. 11111110 $\equiv$ 255.255.255.254
So, Option B, C are correct possibilities.