You can find Poliwhirls with king's rock on them in the wild so you can just go and catch a load of Poliwhirls and hope they have king's rock on them or you can use this method:
1) Get a Pokemon with Compound Eyes ability, Ninjask would work. Put him in the lead of your party and get him fainted. He will cause encountered Pokemon to be more likely to be holding something.
2) Get a Pokemon with Frisk ability in the #2 slot so he comes out first. Banette or Stantler work. He will tell you if the encountered Pokemon hods what you are looking for.
3) Go hunting, and run from all non-productive encounters to speed up the processing of wild Pokemon.
4) When you find what you want (King's Rock, Lucky Egg, Twisted Spoon, whatever,...) catch the Pokemon or just steal it with Thief, Trick, or Covet.
Chat with our AI personalities
first you gotta either get a poliwag and evolve it or just catch the second form then you gotta give it the kings rock and trade it. I know someone who can make shiny politoads but he is not doing it right now
you can get a poliwhirl or a poliwag and evolve to poliwhirl!! then trade poliwhirl holding a king's rock.
poliwag is usually on the beach.
A King's Rock can be found in Celestic Town. Go to the left (or left side of birdhouse thing) and use your Dowsing Machin.
you can find a kings rock on seven island in sevault canyon.