(a) Shared Resources
it is necessary condition for deadlock.since if resources are not shared then every process will get its private resources and always executes.
(b) No Preemption
it a necessary condition.since if there is a preemption of RESOURCES then a deadlock never occurs.
(c) Acyclic condition among processes
dont know what does this mean!
so answer is maybe C or D