Problem:
Find the minimum difference between any pair in an unsorted array.
#include <stdio.h>
#include <algorithm>
#include <iostream>
using namespace std;
int arr[105];
int res[100005];
int main()
{
int t,n,k,a;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
for(int i=0;i<105;i++)
arr[i]=0;
for(int i=0;i<n;i++)
{
scanf("%d",&a);
arr[a]++;
}
//sort(arr,arr+n);
k=0;
for(int i=0;i<105;i++)
{
if(arr[i]==0)
continue;
for(int j=1;j<=arr[i];j++)
res[k++]=i;
}
int MN=res[1]-res[0];
for(int i=2;i<n;i++)
{
if(res[i]-res[i-1]<MN)
MN=res[i]-res[i-1];
}
cout<<MN<<endl;
}
return 0;
}