where I am I dividing by 0?
i have used the check
if(s[l])
        p1[k++]=(s[i]+s[j])*s[l];
On Sun, Jun 12, 2011 at 1:58 PM, keyan karthi <keyankarthi1...@gmail.com>wrote:

> @saurabh,nick: u cant divide by 0.. u need to check it while generating the
> array..
>
> i used somethin like this...
>
>
>    1. void fun(int n)
>    2. {
>    3. int a,b,cl;
>    4. for(a=0;a<n;a++)
>    5. {
>    6. for(b=0;b<n;b++)
>    7. {
>    8. for(cl=0;cl<n;cl++)
>    9. {
>    10. v.push_back((inp[a]*inp[b])+inp[cl]);
>    11. if(inp[cl])
>    12. c.push_back(inp[cl]*(inp[a]+inp[b]));
>    13. }
>    14. }
>    15. }
>    16. }
>
> u cant divide by 0.. tats why u get tat runtime error... fix it :)
>
>
> On Sun, Jun 12, 2011 at 1:52 PM, saurabh singh <saurab...@gmail.com>wrote:
>
>> I am trying really hard to get this one fixed,still cant find any
>> problem......:-(
>>
>>
>> On Sun, Jun 12, 2011 at 1:45 PM, nicks <crazy.logic.k...@gmail.com>wrote:
>>
>>> forgot to attach the code...here is the modified code..
>>>
>>> #include<vector>
>>> #include<iostream>
>>> #include<algorithm>
>>> #include<cstdio>
>>> #include<cmath>
>>>
>>> using namespace std;
>>>
>>> int main()
>>> {
>>>     int num,ans=0,value,i,j,k,t,a,b,c,d,e,f;
>>>     scanf("%d",&num);
>>>     vector<int> val,a1,a2;
>>>     for(i=0;i<num;i++)
>>>     {
>>>         scanf("%d",&t);
>>>         val.push_back(t);
>>>     }
>>>     for(i=0;i<num;i++)
>>>     {
>>>         a=val[i];
>>>         for(j=0;j<num;j++)
>>>         {
>>>                 b=val[j];
>>>                 for(k=0;k<num;k++)
>>>                 {
>>>                         c=val[k];
>>>                         t=a*b+c;
>>>                         a1.push_back(t);
>>>                 }
>>>         }
>>>     }
>>>     for(i=0;i<num;i++)
>>>     {
>>>         d=val[i];
>>>         for(j=0;j<num;j++)
>>>         {
>>>                 e=val[j];
>>>                 for(k=0;k<num;k++)
>>>                 {
>>>                         f=val[k];
>>>                         t=(f+e)*d;
>>>                         a2.push_back(t);
>>>                 }
>>>         }
>>>     }
>>>
>>>     sort(a2.begin(),a2.end());
>>>     vector<int>::iterator itr;
>>>     for(itr=a1.begin();itr!=a1.end();itr++)
>>>     {
>>>          value=*itr;
>>>          //ans+=count(a2.begin(),a2.end(),value);
>>>
>>>  
>>> ans+=upper_bound(a2.begin(),a2.end(),value)-lower_bound(a2.begin(),a2.end(),value);
>>>     }
>>>
>>>     printf("%d",ans);
>>>     return 0;
>>> }
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Sun, Jun 12, 2011 at 1:07 AM, nicks <crazy.logic.k...@gmail.com>wrote:
>>>
>>>> @keyan..your advice was really very helpful...the time limit has come
>>>> under control ...1.4s but now i am getting WA though my code is giving 
>>>> right
>>>> ans for the test cases...can you plz help me in figuring out where it fails
>>>> ..
>>>>
>>>>
>>>> On Sun, Jun 12, 2011 at 12:59 AM, keyan karthi <
>>>> keyankarthi1...@gmail.com> wrote:
>>>>
>>>>>
>>>>> hint: u ve commented some vital part of ur code ;)
>>>>>
>>>>> On Sun, Jun 12, 2011 at 12:46 PM, saurabh singh 
>>>>> <saurab...@gmail.com>wrote:
>>>>>
>>>>>>
>>>>>> I did used the library functions but I am getting sigsegv after 0.03
>>>>>> s.I cant understand why?I am presuming sumthing wrong about the
>>>>>> implemenatation of bsearch?
>>>>>> I am assuming bsearch is returning a pointer to the first found
>>>>>> element.
>>>>>>
>>>>>> On Sun, Jun 12, 2011 at 12:41 PM, keyan karthi <
>>>>>> keyankarthi1...@gmail.com> wrote:
>>>>>>
>>>>>>> upper_bound and lower_bound does a binary search to get count of
>>>>>>> alike terms.. which u tend to sum of to get the ans..
>>>>>>> out of the two arrays, u need to sort one array.. this will be teh
>>>>>>> vector in which u do the binary search wit every element of un sorted
>>>>>>> array..
>>>>>>> this is the approach i used... :) hope this helps...
>>>>>>>
>>>>>>> the above functions defined in "algorithm"
>>>>>>>
>>>>>>>
>>>>>>> On Sun, Jun 12, 2011 at 12:34 PM, nicks 
>>>>>>> <crazy.logic.k...@gmail.com>wrote:
>>>>>>>
>>>>>>>> and here is my code I'm Getting TLE.... i tried to implement binary
>>>>>>>> search but failed bcoz how will i be able to trace the value from one 
>>>>>>>> vector
>>>>>>>> into another vector if there are any multiple occureneces of any 
>>>>>>>> value(i
>>>>>>>> mean i have count them).....in this code i i have used count of 
>>>>>>>> algorithm
>>>>>>>> which may be expensive...suggest a better way plz...thnx in advance !!
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> #include<vector>
>>>>>>>> #include<iostream>
>>>>>>>> #include<algorithm>
>>>>>>>> #include<cstdio>
>>>>>>>> #include<cmath>
>>>>>>>> using namespace std;
>>>>>>>> int main()
>>>>>>>> {
>>>>>>>>     int num,ans=0,value,i,j,k,t,a,b,c,d,e,f;
>>>>>>>>     scanf("%d",&num);
>>>>>>>>     vector<int> val,a1,a2;
>>>>>>>>     for(i=0;i<num;i++)
>>>>>>>>     {
>>>>>>>>         scanf("%d",&t);
>>>>>>>>         val.push_back(t);
>>>>>>>>     }
>>>>>>>>     for(i=0;i<num;i++)
>>>>>>>>     {
>>>>>>>>         a=val[i];
>>>>>>>>         for(j=0;j<num;j++)
>>>>>>>>         {
>>>>>>>>                 b=val[j];
>>>>>>>>                 for(k=0;k<num;k++)
>>>>>>>>                 {
>>>>>>>>                         c=val[k];
>>>>>>>>                         t=a*b+c;
>>>>>>>>                         a1.push_back(t);
>>>>>>>>                 }
>>>>>>>>         }
>>>>>>>>     }
>>>>>>>>     for(i=0;i<num;i++)
>>>>>>>>     {
>>>>>>>>         d=val[i];
>>>>>>>>         for(j=0;j<num;j++)
>>>>>>>>         {
>>>>>>>>                 e=val[j];
>>>>>>>>                 for(k=0;k<num;k++)
>>>>>>>>                 {
>>>>>>>>                         f=val[k];
>>>>>>>>                         t=(f+e)*d;
>>>>>>>>                         a2.push_back(t);
>>>>>>>>                 }
>>>>>>>>         }
>>>>>>>>     }
>>>>>>>>
>>>>>>>>     vector<int>::iterator itr;
>>>>>>>>     for(itr=a1.begin();itr!=a1.end();itr++)
>>>>>>>>     {
>>>>>>>>          value=*itr;
>>>>>>>>          ans+=count(a2.begin(),a2.end(),value);
>>>>>>>>     }
>>>>>>>>
>>>>>>>>     printf("%d\n",ans);
>>>>>>>>     return 0;
>>>>>>>> }
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>   On Sat, Jun 11, 2011 at 11:57 PM, saurabh singh <
>>>>>>>> saurab...@gmail.com> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>> OK here is my code
>>>>>>>>> #include<stdio.h>
>>>>>>>>> #include<algorithm>
>>>>>>>>> #include<utility>
>>>>>>>>> using namespace std;
>>>>>>>>> int compareints (const void * a, const void * b)
>>>>>>>>> {
>>>>>>>>>   return ( *(long*)a - *(long*)b );
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> int main()
>>>>>>>>>     {
>>>>>>>>>     int n,s[101],a,b,c,d,e,f;
>>>>>>>>>     long p1[100009],p2[100009];
>>>>>>>>>     int i,j,k;
>>>>>>>>>     scanf("%d",&n);
>>>>>>>>>     for(i=0;i<n;i++) scanf("%d",&s[i]);
>>>>>>>>>     //sort(s,s+i);
>>>>>>>>>      k=0;
>>>>>>>>>     for(i=0;i<n;i++)
>>>>>>>>>         {
>>>>>>>>>         for(j=0;j<n;j++)
>>>>>>>>>         {
>>>>>>>>>         for(int l=0;l<n;l++)
>>>>>>>>>             {
>>>>>>>>>             if(s[l])
>>>>>>>>>         p1[k++]=(s[i]+s[j])*s[l];
>>>>>>>>>         }
>>>>>>>>>         }
>>>>>>>>>         }
>>>>>>>>>         //sort(p1,p1+k);
>>>>>>>>>         int x=0;
>>>>>>>>>         for(i=0;i<n;i++)
>>>>>>>>>         {
>>>>>>>>>         for(j=0;j<n;j++)
>>>>>>>>>         {
>>>>>>>>>         for(int l=0;l<n;l++)
>>>>>>>>>             {
>>>>>>>>>             //if(s[l]!=0)
>>>>>>>>>         p2[x++]=(s[i]*s[j])+s[l];
>>>>>>>>>         }
>>>>>>>>>         }
>>>>>>>>>         }
>>>>>>>>>         sort(p2,p2+x);
>>>>>>>>>         long *pItem;
>>>>>>>>>         long count=0;
>>>>>>>>>         for(i=0;i<k;i++)
>>>>>>>>>             {
>>>>>>>>>             pItem = (long*) bsearch (&p1[i], p2, x, sizeof (long),
>>>>>>>>> compareints);
>>>>>>>>>             if(pItem){
>>>>>>>>>
>>>>>>>>>             long *tmp=pItem;
>>>>>>>>>
>>>>>>>>> if(pItem==p2)while(*(tmp)==p1[i]&&tmp<p2+x){ count++;tmp++;}
>>>>>>>>>             else
>>>>>>>>>                             if(pItem==(p2+(x-1))) {
>>>>>>>>> while(pItem>=p2&&*(pItem)==p1[i]){count++;pItem--;}}
>>>>>>>>>                 else{
>>>>>>>>>                                 tmp++;
>>>>>>>>>                                 while(*(tmp)==p1[i]&&tmp<p2+x){
>>>>>>>>> count++;tmp++;}
>>>>>>>>>
>>>>>>>>> while(pItem>=p2&&*(pItem)==p1[i]){count++;pItem--;}
>>>>>>>>>                 }
>>>>>>>>>              //count++;
>>>>>>>>>             }
>>>>>>>>>             }
>>>>>>>>>             printf("%ld\n",count);
>>>>>>>>>
>>>>>>>>>         //for(i=0;i<k;i++) printf("%ld ",p1[i]);printf("\n");
>>>>>>>>>         //for(i=0;i<x;i++) printf("%ld ",p2[i]);printf("\n");
>>>>>>>>>     return 0;
>>>>>>>>>     }
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Why is it getting segmentation fault?
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> 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.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Saurabh Singh
>>>>>> B.Tech (Computer Science)
>>>>>> MNNIT ALLAHABAD
>>>>>>
>>>>>>
>>>>>> --
>>>>>>  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.
>>>
>>
>>
>>
>> --
>> Saurabh Singh
>> B.Tech (Computer Science)
>> MNNIT ALLAHABAD
>>
>>
>>  --
>> 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.
>



-- 
Saurabh Singh
B.Tech (Computer Science)
MNNIT ALLAHABAD

-- 
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.

Reply via email to