May I use Random Oracle for Inversed Look-up?
Yes, that is standard usage of a random oracle. The simulator gets to simulate the interface to the random oracle so it can record all queries made by the adversary and use this information to "invert" the random oracle. 

In your example you must be sure that the simulation does something reasonable when the adversary outputs a value $r$ that is not the result of any call to the oracle.