A school assigns student roll numbers from 1 to n. However, its registration list contains n + 1 entries.
Exactly one roll number appears more than once. Every other roll number present in the list occurs only once.
Return the repeated roll number without changing the list and without using extra space that grows with the list size.
int findDuplicateRollNumber(List<Integer> rollNumbers)
rollNumbers: The roll numbers stored in the student registration list.The only roll number that appears more than once.
rollNumbers.1 ≤ n ≤ 100,000rollNumbers.size() = n + 11 ≤ rollNumbers.get(i) ≤ nrollNumbers is never null. findDuplicateRollNumber( rollNumbers = List.of(7, 3, 1, 6, 5, 2, 4, 5))
Returns 5.
Roll number 5 appears twice.
findDuplicateRollNumber( rollNumbers = List.of(2, 4, 1, 3, 1))
Returns 1.
Roll number 1 is the only repeated roll number.
findDuplicateRollNumber( rollNumbers = List.of(3, 3, 2, 3, 5, 1))
Returns 3.
Roll number 3 appears three times. A repeated roll number may occur more than twice.