if u r saying i/p array can't be modified and complexity O(n logn)time and O(1) space, then i dont there exists any way to do that.
if complexity is not the matter, then brute force way of three nested loops is the solution O(n^3) since here the original array will not be modified. Sanju :) On Sun, Aug 21, 2011 at 7:48 AM, sarvesh saran <aquarian.thun...@gmail.com>wrote: > Hi, > > I have posted this in stackoverflow. So you may choose to join here as well > (this question was asked in an adobe written test) > > > http://stackoverflow.com/questions/7138874/find-triangular-triplet-in-an-array > > thanks, > Sarvesh > > > On Sun, Aug 21, 2011 at 8:09 PM, sarvesh saran <aquarian.thun...@gmail.com > > wrote: > >> Hi Sanjay >> >> I think i forgot to mention that in my original post..so sorry about that. >> It is a constant array and should not be modified. >> >> thanks, >> Sarvesh >> >> >> >> >> On Sun, Aug 21, 2011 at 8:08 PM, sarvesh saran < >> aquarian.thun...@gmail.com> wrote: >> >>> Hi Sanjay, >>> >>> The input is a constant vector. So it cannot be modified. Space >>> requirement is O(1) so it cannot be copied. >>> >>> thanks, >>> Sarvesh >>> >>> >>> On Sun, Aug 21, 2011 at 8:04 PM, Sanjay Rajpal <srn...@gmail.com> wrote: >>> >>>> By O(1) we mean that we can use variables, can't use something that >>>> equals size of the i/p array. >>>> >>>> Use Quick sort, sorting is done in-place which O(n log n) in time, and >>>> O(1) in space. >>>> Sanju >>>> :) >>>> >>>> >>>> >>>> On Sun, Aug 21, 2011 at 7:31 AM, sarvesh saran < >>>> aquarian.thun...@gmail.com> wrote: >>>> >>>>> Hi Sanjay, >>>>> >>>>> *Because of O(1) complexity you cannot copy and sort the input array. >>>>> >>>>> *thanks, >>>>> Sarvesh >>>>> * >>>>> * >>>>> >>>>> On Sun, Aug 21, 2011 at 8:00 PM, Sanjay Rajpal <srn...@gmail.com>wrote: >>>>> >>>>>> Simply sort the array and check for a[i]+a[i+1] > a[i+2] for i=0 to >>>>>> n-3. >>>>>> >>>>>> >>>>>> Sanju >>>>>> :) >>>>>> >>>>>> >>>>>> >>>>>> On Sun, Aug 21, 2011 at 7:28 AM, sarvesh saran < >>>>>> aquarian.thun...@gmail.com> wrote: >>>>>> >>>>>>> No idea how to solve the problem except the brute force O(n3) >>>>>>> approach.I am looking for a better solution than this. Because of O(1) >>>>>>> complexity you cannot copy and sort the input. >>>>>>> >>>>>>> >>>>>>> A zero-indexed array A consisting of N integers is given. A triplet >>>>>>> (P, Q, R) is triangular if and >>>>>>> A[P] + A[Q] > A[R], >>>>>>> A[Q] + A[R] > A[P], >>>>>>> A[R] + A[P] > A[Q]. >>>>>>> >>>>>>> For example, consider array A such that >>>>>>> >>>>>>> A[0] = 10 A[1] = 2 A[2] = 5 >>>>>>> A[3] = 1 A[4] = 8 A[5] = 20 >>>>>>> Triplet (0, 2, 4) is triangular. >>>>>>> >>>>>>> public int triangle(int[] A) >>>>>>> >>>>>>> that, given a zero-indexed array A consisting of N integers, returns >>>>>>> 1 if there exists a triangular triplet for this array and returns 0 >>>>>>> otherwise. >>>>>>> >>>>>>> Assume that: >>>>>>> >>>>>>> N is an integer within the range [0..100,000]; >>>>>>> each element of array A is an integer within the >>>>>>> range[-2,147,483,648..2,147,483,647]. >>>>>>> For example, given array A such that >>>>>>> >>>>>>> A[0] = 10 A[1] = 2 A[2] = 5 >>>>>>> A[3] = 1 A[4] = 8 A[5] = 20 >>>>>>> the function should return 1, as explained above. Given arrayA such >>>>>>> that >>>>>>> >>>>>>> A[0] = 10 A[1] = 50 A[2] = 5 >>>>>>> A[3] = 1 >>>>>>> the function should return 0. >>>>>>> Expected worst-case time complexity: O(n log n) >>>>>>> Expected worst-case space complexity: O(1) >>>>>>> >>>>>>> -- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "Algorithm Geeks" group. >>>>>>> To post to this group, send email to algogeeks@googlegroups.com. >>>>>>> To unsubscribe from this group, send email to >>>>>>> algogeeks+unsubscr...@googlegroups.com. >>>>>>> For more options, visit this group at >>>>>>> http://groups.google.com/group/algogeeks?hl=en. >>>>>>> >>>>>> >>>>>> -- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "Algorithm Geeks" group. >>>>>> To post to this group, send email to algogeeks@googlegroups.com. >>>>>> To unsubscribe from this group, send email to >>>>>> algogeeks+unsubscr...@googlegroups.com. >>>>>> For more options, visit this group at >>>>>> http://groups.google.com/group/algogeeks?hl=en. >>>>>> >>>>> >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "Algorithm Geeks" group. >>>>> To post to this group, send email to algogeeks@googlegroups.com. >>>>> To unsubscribe from this group, send email to >>>>> algogeeks+unsubscr...@googlegroups.com. >>>>> For more options, visit this group at >>>>> http://groups.google.com/group/algogeeks?hl=en. >>>>> >>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "Algorithm Geeks" group. >>>> To post to this group, send email to algogeeks@googlegroups.com. >>>> To unsubscribe from this group, send email to >>>> algogeeks+unsubscr...@googlegroups.com. >>>> For more options, visit this group at >>>> http://groups.google.com/group/algogeeks?hl=en. >>>> >>> >>> >> > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to algogeeks@googlegroups.com. > To unsubscribe from this group, send email to > algogeeks+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/algogeeks?hl=en. > -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@googlegroups.com. To unsubscribe from this group, send email to algogeeks+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.