public class Solution {
public int FindPairs(int[] nums, int k) {
int pairs = 0;
Array.Sort(nums);
int a = 0;
Hashtable has = new Hashtable();
int count = nums.Count();
for (int i = 0; i < count; i++)
{
if (!has.Contains(nums[i]))
{
has.Add(nums[i],1 );
if (k != 0 && has.Contains(nums[i] - k))
{
pairs++;
}
}
else
{
a = (int)has[nums[i]] +1;
has[nums[i]] = a;
}
}
if (k == 0)
{
foreach (var item in has.Values)
{
if((int)item>1)
{
pairs++;
}
}
}
return pairs;
}
}