I am struggling to find the exact solution for this question.
A university has two student clubs. The number of students registered to the first club is m and their IDs are stored in an array A (with m elements) whereas the number of students registered to the second club is n and their IDs are stored in an array B (with n elements), where m≤n. A student might be registered to either one of these clubs or both. We want to decide how many students are registered to both clubs. Given two arrays A and B along with their lenghts m and n, write a O(mlogn) algorithm (as a pseudocode) to find the number of elements that are registered to both clubs. For example, when A is [2, 6, 3, 9, 11, 8] and B is [3, 11, 7, 4, 2, 5, 1], the algorithm must return 3 corresponding to the students with IDs 2, 3 and 11.Explain why your running time is O(mlogn) in sufficient detail.
First thing that comes to my mind is sorting the array B and then searching match for each element in B from A. Sorting O(nlogn), looking for match O(mlogn) then the conluded result becomes O((m+n)logn).
Second way on my mind was to merge the arrays then look for the duplicates but idk.