Weird behaviour with and without struct on execution time

In this problem, i was using fft to solve it but found very strange behaviour between two case.
submission1 in which my fft code and its function are written are written normally which gave me TLE in mostly all cases but in submission2 when I put all fft function into struct and my code get AC.

struct is the only change between two submission. Can someone explain the reason behind this.