@Shuaib and Sindhu: Right. Take out the first "else", or replace ++p
with {++p ; ++i; ++j}.

Dave

On Aug 7, 1:42 pm, Shuaib Khan <[email protected]> wrote:
> On Sun, Aug 7, 2011 at 11:06 PM, Dave <[email protected]> wrote:
> > @Yasir: Sort the numbers. Then
>
> > int i = 0, j = 1, m, p = 0;
> > while( j < N )
> > {
> >    m = a[j] - a[i];
> >    if( m = K )
> >        ++p;
> >    else if( m < K )
> >        ++j;
> >    else
> >        ++i;
> > }
> > // answer = p
>
> Looks like an infinite loop in there to me...
>
>
>
>
>
>
>
> > Complexity = O(n log n).
>
> > Dave
>
> > On Aug 7, 12:53 pm, Yasir <[email protected]> wrote:
> > > Guys,
> > > Let's try to find out an efficient solution for the following prob:
>
> > > Given N numbers , [N<=10^5] we need to count the total pairs of
> > > numbers that have a difference of K. [K>0 and K<1e9]
>
> > > Input Format:
> > > 1st line contains N & K.
> > > 2nd line contains N numbers of the set. All the N numbers are assured
> > > to be distinct.
>
> > > Output Format:
> > > One integer saying the no of pairs of numbers that have a diff K.
>
> > > PS: Note that n is very large, so try to come up with an efficient
> > > solution. :)
>
> > > Source:http://www.interviewstreet.com/recruit/challenges/dashboard/
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "Algorithm Geeks" group.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to
> > [email protected].
> > For more options, visit this group at
> >http://groups.google.com/group/algogeeks?hl=en.
>
> --
> Shuaibhttp://www.bytehood.comhttp://twitter.com/ShuaibKhan

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to