P is not a subset of NPC, and this is unconditionally true.
Reason: if P=NP, every NP-C problem is solvable in polynomial time, hence
1. NPC is a subset of P
For P = NPC, we need to prove that P is a subset of NP-C. In other words, an NP-C problem can be reduced to every deterministically polynomial time problem.
i.e A <= B, for all B belongs to P, and any A that belongs to NP-C
Proving the above statement would mean that every problem in P is at least as hard as every other problem in P (and NP, since P=NP). Then, by definition, every problem in P is an NPC problem.
Now say I pick A to be an NP-C problem namely the Hamiltonian Path problem, according to the question I have a way of solving this in deterministically polynomial time. So for a given graph, I solve the problem in polynomial time. For a "yes" output to the Hamiltonian path problem, I create a "yes" input to a P problem (for eg. an even input for the P problem "Is the input number even?") and for a "no" output to the Hamiltonian path problem, I create a "no" input to a problem P. A "yes" or "no" input here means an input which will always output "yes" or "no" respectively.
This effectively means that a reduction that reduces an NP complete problem to every other P problem exists, except for only two languages in P given below:
i) Language that accepts everything.
ii) Language that accepts nothing.
(i) has no "no" answer and (ii) has no "yes" answer so the reduction described above is not valid for these 2 cases.
This means,
2. P- {Sigma*, Phi} is a subset of NPC
and therefore P=NPC cannot be followed from 1 and 2 as other answers suggest, the only conclusion is:
P-{Sigma*, Phi} = NPC
Answer is C
https://cs.stackexchange.com/questions/94201/if-p-np-why-is-p-a-subset-of-npc