Pythagoras Triplet: Given a number N (denoting one of the legs of the triangle), Print its Pythagoras pair in increasing order if they exist. Otherwise, print "-1"

As my code working fine but still it fails at test cases -0 and 1.
can you suggest something why and how can I fix this?

@pradeep.mahato.cs.2015,

Use long instead of int everywhere in your code

why we need to use long instead of int ?
i also faced the same problem that code works fine but doesnt pass any test case.
can you please explain this?