I've been using randomized trainers, and I have to say that Snorlax is absolutely miserable. It starts with Headbutt, Amnesia, and Rest, meaning most Pokemon get walled by it indefinitely. Another problem is Gyarados, who starts with Dragon Rage and Hydro Pump. Fighting either of these in the early game is a death sentence.
I totally agree with this.
I'm one who likes a true challenge, but some Pokémon randomized in early game can be really unfair due their high stats and boost moves available for them that abuses it's own stats even more.
-Scyther
God of critical hits, Slash turns into Guillotine after it boosts itself with focus energy and/or swords dance) and good luck to hit it if it's high enough to use Double Team.
-Gyarados
Hydro Pump kills everything in it's way, and if you use any Pokémon who resist it like water or grass, good luck, because in early game them don't deal much damage, don't have powerful neither Super Effective moves to counter it, neither will have enough HP to survive two dragon rages, if it even can survive at least one.
-Lapras
Have high defense, it's hard to deal damage even with Super Effective moves, it also usually attacks first, makes you sleep with sing, protect itself with Mist so it can't be paralized, but can paralize you if you wake up and get hit by body slam, and good luck to hit it if you're not confused yet.
-Snorlax
Hard to deal any damage even with Super Effective moves and recover itself often, you would probably lose the battle without PP left and struggling, but it's headbutt is here to solve this problem and kills you before it can happen.
-Taurus
High stats, deal lots of damage, resist too much as Gen one Taurus have high both Defense and Special, don't hit as much critical hits as Scyther's Slash, but it's Stomp will flinch you as often instead.
-Hitmonlee
High attack stats and good speed stats, it's Double Kick give too much damage even if your Pokémon resists it, and if it use one Medidate, it's Double Kick turns into some early Rolling Kick, if it uses two Medidate, seems it's Double Kick is now early Jump Kick, if it's use Medidate Three times, it looks that it's Double Kick is now early High Jump Kick.
I survived most battles against them glad for my Pikachu's high speed + Thunder Wave, Rock-Type Pokémon to tank their powerful Normal Type moves until get my Gastly to abuse it's imunity against them. Trainers who have 3 or more Pokémon on team and coincidently randomized two or more of what I mentioned above was certain defeat.
I guess they should be unlocked between level 30 or 40 to be randomized and give challenge without unfairness.
Also, Pinsir, Hitmonchan, Chansey, Mr. Mine, Jynx, Electabuzz, Magmar, Licktung and Kanghaskan can also be a pain due their high stats in very early game, but as they don't have much moves available to abuse it, I guess it's fair they be unlocked more early between 20 and 30.