Skip to content

Instantly share code, notes, and snippets.

@connordavison
Created October 8, 2015 21:50
Show Gist options
  • Select an option

  • Save connordavison/611e1b036c7b540fbb9d to your computer and use it in GitHub Desktop.

Select an option

Save connordavison/611e1b036c7b540fbb9d to your computer and use it in GitHub Desktop.
Counter number of n-duplicates in an array
import java.util.HashMap;
import java.util.Map;
class Solution {
public static int solve(int[] A, int n) {
HashMap<Integer, Integer> counts = new HashMap<Integer, Integer>();
int i;
for (int a : A) {
i = counts.containsKey(a) ? counts.get(a) + 1 : 1;
counts.put(a, i);
}
int num_n_duplicates = 0;
for (Map.Entry<Integer, Integer> c : counts.entrySet()) {
if (n == c.getValue()) num_n_duplicates++;
}
return num_n_duplicates;
}
public static void main(String[] args) {
int[] A = {0, 0, 1, 1, 1, 2, 2, 3, 3, 3};
System.out.println("Starting...");
// Should return 2
System.out.println(Solution.solve(A, 2));
// Should return 2
System.out.println(Solution.solve(A, 3));
// Should return 0
System.out.println(Solution.solve(A, 0));
}
}
@connordavison

Copy link
Copy Markdown
Author

Output:

nasatyau@DANTE [~/Dropbox/codebox/java/count-n-duplicates]$ java Solution
Starting...
2
2
0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment