As long as we are talking only about additive neurons (i.e. all inputs to the neuron are summed together before being passed to the activation function), "unipolar" and "bipolar" can be used interchangeably. We can always transform a "unipolar" output to a "bipolar" one by multiplying by 2 and subtracting one:
$$
o_{bipolar} = 2 \cdot o_{unipolar} - 1
$$
To implement this in the network, we just need to double the weights and decrease the bias in by one for each input neuron:
$$
w_{ij}' = 2 \cdot w_{ij}
$$
$$
bias_j' = bias_{j} - N_{in[j]}
$$
where $N_{in[j]}$ is the number of neurons feeding their output as the input to the $j$-th neuron.
So the part
if we use Bipolar
can be safely ignored. Now, as Thomas points out in his comment, the first layer of the networks (D) and (E) simply map the continuous $(x, y)$-space onto $\{0, 1\}^2$ (or, alternatively, $\{-1, 1\}^2$, if you use "bipolar" neurons). With the given arrangement of the classes this becomes the classical XOR-problem, and you need two further layers to solve it.