Can somebody explain why I got WA when declared the array “dp” outside main in this solution:
https://www.codechef.com/viewsolution/8884014
whereas AC when declared in main :
https://www.codechef.com/viewsolution/8884063
The only difference in the two solutions is only the position of declaration of the array. I was also initialising the array to 0 for each test case.
2 Likes
Outside the main it’s static nd inside its dynamic. Always declare large arrays outside main and re-use it.
xlee
3
I think you are not setting dp array to zero after the test case loop!
kr0oze
4
It’s actually not the only difference (use diff - there’s array size difference and one expression difference).
It’s about the
if((i^k) > max)
vs
if(i^k > max)
which is the same as
if(i^(k > max))
C just let you shoot yourself in the leg
1 Like