@Nekketsu:
I suppose is because her Mudsdale has an ability that buffs up its defense for every attack it endures, making it tanky and pretty difficult if you don't have a good grass or water mon with a high sp. at. Also because Hapu has more than one mon in her team, as opposed to Ribombee that may call only one ally. I guess is for balance, regardless if you're overleveled or not.
And to me, whose only grass mon was Whimsicott, it posed quite the challenge.
By the way, how did you manage to have your mons above lv. 55 when you fought Necrozma? Mine were barely lv. 50 when I got there. Have I seriously underestimaded the Exp. Share or what, lol.
From where I'm standing, one single Pokémon with a +2 in all stats is far more terrifying than a team of four regular 'mons. Why? Because with a +2 in all stats (and Quiver Dance on top of that), any neutrally effective move will almost certainly oneshot. And then there's Necrozma, with its Mewtwo-tier base Attack and Special Attack… with a +1 to everything. At least for Hapu you can switch into something that takes neutral damage, for both Necrozma and Ribombee you have to have a resistance to stand a chance. Oh, and Ribombee being able to summon a companion? Two-on-one battle? Again, far worse than anything Hapu could throw at me.
As for how I got that high… I had been told in advance that Necrozma would be lv60, so I went for that. Of course I had also been led to believe, by someone who misunderstood where I was in the story, that this lv60 Necrozma was fought in place of the first Lusamine battle rather than the second, and by the time that misunderstanding was cleared up I'd already gone several levels above Lusamine's team. So yeah, you wouldn't normally be that high, unless you keep the Exp. Share on constantly which I did not.