Your reasoning is correct. Are you confused because acetone is not a hydrocarbon? That has to be a mistake in the wording of the question. Another common mistake is to forget that there are some reactions that aldehydes can do that ketones are inert to.
There are seven constitutional isomers for $\ce{C3H6O}$, not counting the enols, which are the minor tautomers of acetone and propanal:
- Acetone - a ketone
- Propanal - an aldehyde
- Cyclopropanol - an alcohol
- Allyl alcohol - an alkene and an alcohol
- Methoxyethene - an alkene and an ether
- Oxacyclobutane - a cyclic ether
- Propylene oxide - an epoxide
Your reasoning is correct based on the chemical tests:
- Sodium reacts with alcohols - a negative sodium test means no alcohol functional group is present, eliminating allyl alcohol (and the enols if you consider them).
- Bromine reacts with alkenes and alkynes (and a small number of other functional groups, like phenols) - a negative bromine test means no alkene functional group is present, eliminating allyl alcohol, methoxyethene, and the enols.
- Ammoniacal silver nitrate (Tollens' reagent) reacts with aldehydes - a negative Tollens test means no aldehyde function group is present, eliminating propanal.
The results of the qualitative test leave you with three possibilities, acetone, oxacyclobutane, and propylene oxide. With the evidence you have, you might not be able to distinguish between the three.
An iodoform test would confirm or eliminate acetone.
A test using silver nitrate and periodic acid would confirm or eliminate propylene oxide.