why this math return negative numbers for some numbers:
int x = 351;
String bigValue= ((50*x*x*x-150*x*x+400*x)/3) + "";
BigInteger resultInteger = new BigInteger(bigValue);
System.out.println(resultInteger);
result -> 714612600
but if i use 352
result -> -710900565
for x=500 -> 639244234
WHY?