one test case is failing. whats wrong in the code?
#include
#include
using namespace std;
void pairs(int *a, int n, int target)
{
sort(a,a+n);
int l=a[0];
int r=a[n-1];
while(l<r)
{
if(l+r==target)
{
cout<<l<<" and "<<r<<endl;
l++;
r--;
}
else if(l+r>target)
{
r--;
}
else l++;
}
}
int main() {
int n,target;
cin>>n;
int a[n];
for(int i=0;i<n;i++)
cin>>a[i];
cin>>target;
pairs(a,n,target);
return 0;
}