Here we have to remember 2 things :
a) A process Pi can be allocated resources maintaining the safety property iff need(Pi) <= available for each type of resources (in this case we have to check for each of A , B and C )
b) After this process which satisfies the above property and is completed execution we set its flag == FALSE indicating that it will not come again unless other processes are services.So after execution of it , release of its resources allocated to it is nescessary.So available no of resources will obviously increase.So we do ,
Available = Available + Allocation(Pi) for each of A,B and C resource type.
Now let us check for option B) firstkeeping in mind the above mentioned points
Initially available = [ 2 3 0]
Now need(P3) = [ 0 1 1]
So we can see need(P3) for type C is 1 which is less than available resource of type C which is 0.
So here itself the criteria for selection of P3 fails.
So P3 cannot come first in safe sequence.
Hence both B and C are false.
Therefore the correct option should be A)