http://www.codechef.com/viewsolution/5842794
Can’t figure out on which case is my code failing.
Problem is in this part :
if (c == 1)
{
j = i;
break;
}
Answer should be max of all such numbers encountered which divides each element of the array.
If you still get stuck then refer this corrected solution : http://ideone.com/2eLRFg
2 Likes
^Max of all such numbers which lies in range [1, s].
I am starting the loop from s to 2. So automatically the first divisor will be greatest. I found my mistake was that whenever(excluding first t =1) 1 was there in array the loop for(i=s;i>1;i–) failed. Changed it to
for(i=s;i>=1;i–) and it worked. Thanks for answering