Lepszego w sensie? Np krótszego kodu?
Oczywiście, że tak. Jest jednak w twoim kodzie malutki błąd.
long int = int w systemach 32 bit - a taki jest na SPOJ'u
W tym zadaniu typ int jest wystarczający, więc to nie powoduje błędu
Gdy chcesz użyć typu 2^64 to używaj na przyszłość long long
Na ideone.com można i należy wklejać testy.
Zamiast tłumaczyć co i jak można skrócić, tu masz poprawiony swój kod z jednym błędem - aby ktoś po bezmyślnym przekopiowaniu nie uzyskał odrazu AC: https://ideone.com/ <-- tu był link , ale i tak, gdy przeczytasz usunę ten link.