I would suggest you to play with regulars for a bit before going serious into survival (you can get lots of points there per run once you have suceed the way you counter pokemons).
I do like to note overused pokemons are still ok to use but it is not the key to achieve tons of wins. To begin with, it also depends on your battle tower level because it will prevent you to choose certain pokemons. Start with a pokemon team that can self heal and damage the target at same time, know the most used moves a certain pokemon do have then you can counter it properly. As you can see the first step is familiarizing yourself with pokemons moves, not about OMG LEGENDARIES IM DED. Legendaries only have the name, they are so common to battle against than you think. You have the advantage abour the NPC not being able to switch during battles like they shoud be so thats a plus side, Entry Hazards such spikes and stealth rock are useful (remember about you can switch against a NPC at any time, depending on your pokemon). I would like to see the team you have on mind so I can check what you are trying to do. Another tip is to have a sleep inducing move + status boosting so you can boost enough to try a sweep (One example is Butterfree with Sleep Powder + Quiver Dance + Silver Wind + Dream Eater) careful with some working abilities (you need to check Donar's log and check the pokemons with those abilities as first ability, aka, the Butterfree moveset wont work at all against Houndoom and Kangaskhan by example)
Once you are used to know which moves the NPC's pokemons are using you can set a nice predict nd able to switch and take advantage of certain abilities (such as motor drive)