you can only find it on a wild poliwag you cannot find it elsewhere
you have to trade a poliwhirl with a kings rock
you can find a kings rock on seven island in sevault canyon.
you find it in cerculan city, right then you will find a pokeball, pick it up, it is a kings rock
go fishing with your super rod or good rod on routes 208 & 225.
A high level Pokemon that has pikup might pik it up Wenhux
you can find rock types in caves or in victory road.
You cant
find a wild Poliwhirl. It would've used its pick-up ability =] make sure it doesn't grow a level while holding it, otherwise, you'll get a Politoed =]
Beat the trainer tower.
final cave
The king is sat on it
You find the kings rock in the very bottom of the Slowpoke Well (Near the town with the bug Pokemon gym)