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 C++ (GCC 9.2.1) (judge verdict: Wrong Answer)

#include <bits/stdc++.h>
using namespace std;
#define rep(i, n) for (int i = 0; i < (int)(n); i++)
#define rep1(i, n) for (int i = 1; i <= (int)(n); i++)
typedef int64_t Int;

int main(){ 
    Int X, A, B, A1, B1;
    cin >> X;

    set<Int> s;
    vector<Int> five(10000);

    set<Int>::iterator ite;;

    rep(i,10000) {
        five[i] = i * i * i * i * i;
        ite = s.find(five[i] - X);
        if (ite != s.end()) {
            A = i;
            B1 = *ite;
            break;
        }

        s.insert(five[i]);
        s.insert(-five[i]);
    }

    rep(i,10000) {
        if (five[i] == B1) {
            B = i;
            break;
        }
        else if (five[i] == -B1) {
            B = -i;
            break;
        }
    }

    cout << A << " " << B << endl;
}