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.*;
public class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		long x = sc.nextLong();
		long a=0;
		long b=0;
		for(int i=-150;i<=150;i++){
			long a1 = x+(long)Math.pow(i,5);
			for(int j=-150;j<=150;j++){
				long h = (long)Math.pow(j,5);
				if(a1==h){
					a=j;
					b=i;
					break;
				}
			}
		}
		System.out.println(a+" "+b);
	}
	 static long floorRoot5(long n) 
    { 
          
        // Base cases 
        if (n == 0 || n == 1) 
        return n; 
        // Do Binary Search for  
        // floor of 5th square root 
        long low = 1, high = n, ans = 0; 
        while (low <= high) 
        { 
            // Find the middle point 
            // and its power 5 
            long mid = (low + high) / 2; 
            long mid5 = mid * mid * mid *  
                            mid * mid; 
            // If mid is the required root 
            if (mid5 == n) 
                return mid;       
            // Since we need floor,  
            // we update answer when 
            // mid5 is smaller than n,  
            // and move closer to 
            // 5'th root 
            if (mid5 < n) 
            { 
                low = mid + 1; 
                ans = mid; 
            } 
            // If mid^5 is greater 
            // than n 
            else
                high = mid - 1; 
        } 
        return ans; 
    } 
}