Description
Solutions
Submission
Get Sizes of Friends Groups 🥗
🔥 FULLTIME

As new students begin to arrive at college, each receives a unique ID number, 1 to n. Initially, the students do not know one another, and each has a different circle of friends. As the semester progresses, other groups of friends begin to form randomly.

There will be three arrays, each aligned by an index. The first array will contain a queryType which will be either Friend or Total. The next two arrays, students1 and students2, will each contain a student ID. If the query type is Friend, the two students become friends. If the query type is Total, report the sum of the sizes of each group of friends for the two students.

Function Description

Complete the function getSizesOfFriendsGroups in the editor.

getSizesOfFriendsGroups has the following parameters:

  1. 1. String[] queryType: an array of strings representing the type of query
  2. 2. int[] student1: an array of integers representing the first student IDs
  3. 3. int[] student2: an array of integers representing the second student IDs
  4. 4. n: the number of students

Returns

int: the sum of the sizes of each group of friends for the two students in a Total query

Example 1:

Input:  queryType = ["Friend", "Friend", "Total"], student1 = [1, 2, 1], student2 = [2, 3, 4], n = 4
Output: 4
Explanation:
Students will start as discrete groups {1}, {2}, {3} and {4}. Students 1 and 2 become friends with the first query, as well as students 2 and 3 in the second. The new groups are {1, 2}, {2, 3} and {4} which simplifies to {1, 2, 3} and {4}. In the third query, the number of friends for student 1 = 3 and student 4 = 1 for a Total = 4. Notice that student 3 is indirectly part of the circle of friends of student 1 because of student 2.
Constraints:
    Unknown for now 🍱
Thumbnail 0
Testcase

Result
Case 1

input:

output: