To summarize the excellent asktom article here, yes, if a query block is going to return one row, then it’s ok, in fact, the mechanism for doing a cartesian join (on that single-row query) is fairly efficient, and that’s why the optimizer chooses it.
http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:4105951726381