N + 1 problem in ApprovalRules::GroupFinder
<!--IssueSummary start-->
<details>
<summary>
Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards.
</summary>
- [Work on this issue](https://contributors.gitlab.com/manage-issue?action=work&projectId=278964&issueIid=376723)
- [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=376723)
</details>
<!--IssueSummary end-->
[`hidden_groups`](https://gitlab.com/gitlab-org/gitlab/blob/bd99027f4f17b1c6c7baca18240a19fbc25ab14c/ee/app/finders/approval_rules/group_finder.rb#L27) is hard to preload, it can be potentially converted into Ruby-like code to avoid extra SQL query.
issue