Problem:
Score : 400 points

Problem Statement

Give a pair of integers (A, B) such that A^5-B^5 = X.
It is guaranteed that there exists such a pair for the given integer X.

Constraints

1 \leq X \leq 10^9

X is an integer.

There exists a pair of integers (A, B) satisfying the condition in Problem Statement.

Input

Input is given from Standard Input in the following format:

X

Output

Print A and B, with space in between.
If there are multiple pairs of integers (A, B) satisfying the condition, you may print any of them.

A B

Sample Input 1

33

Sample Output 1

2 -1

For A=2 and B=-1, A^5-B^5 = 33.

Sample Input 2

1

Sample Output 2

0 -1

Solution in Java (OpenJDK 11.0.6) (judge verdict: Accepted)

import java.util.Scanner;
//static long X=
public class Main {
	@SuppressWarnings("resource")
	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		long X=sc.nextLong();
		long top=0;
		for(long i=1;;i++) {
			if(Math.pow(i,5)-Math.pow(i-1,5)==X) {
				System.out.println(i+" "+(i-1));
				System.exit(0);
			}else if(Math.pow(i,5)-Math.pow(i-1,5)>X) {
				top=i-1;
				break;
			}
		}
		for(long i=top;;i--) {
			if(Math.pow(i,5)>X) {
			for(long j=0;j<=i;j++) {
			if(Math.pow(i,5)-Math.pow(i-j,5)==X) {
				System.out.println(i+" "+(i-j));
				System.exit(0);
			}else if(Math.pow(i,5)-Math.pow(i-j,5)>X) {
				break;
			}
			}
				}else {
					for(long j=0;j<=i;j++) {
						if(Math.pow(i,5)+Math.pow(i-j,5)==X) {
							System.out.println(i+" "+(-i+j));
							System.exit(0);
							}else if(Math.pow(i,5)+Math.pow(i-j,5)<X) {
								break;
							}

				}
		}}
	}
}