Timer is Running

Equivalent Sub-Arrays
Submissions: 19   Accuracy:


  Difficulty: Medium   Marks: 4

Given an array arr[] of n integers. Count the total number of sub-array having total distinct elements same as that of total distinct elements of the original array.


Example 1:

arr[] = {2, 1, 3, 2, 3} 
Output: 5
Total distinct elements in array is 3
Total sub-arrays that satisfy the condition
Subarray from index 0 to 2
Subarray from index 0 to 3
Subarray from index 0 to 4
Subarray from index 1 to 3
Subarray from index 1 to 4

Example 2:

arr[] = {2, 4, 4, 2, 4} 
Output: 2

Your Task:
Since, this is a function problem. You don't need to take any input, as it is already accomplished by the driver code. You just need to complete the function countDistinctSubarray() that takes array arr and integer n  as parameters and returns the desired result.


Expected Time Complexity: O(N).
Expected Auxiliary Space: O(N).


1 ≤ N ≤ 104


** For More Input/Output Examples Use 'Expected Output' option **

Contributor: Sudarshan Sharma
Author: shashwat jain

If you have purchased any course from GeeksforGeeks then please ask your doubt on course discussion forum. You will get quick replies from GFG Moderators there.

Need help with your code? Please use ide.geeksforgeeks.org, generate link and share the link here.

to report an issue on this page.