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 ll long long
#define rep(i,n) for(long long i=-10000;i<(int)(n);i++)

int main() {
  ll x=0;
  cin>>x;
  ll ansa,ansb=0;
  bool finished=false;
  if(x%2==0){
    for(ll b=-30000;b<30000;b+=2){
      for(ll a=-30000;a<30000;a+=2){
        if(a*a*a*a*a-b*b*b*b*b==x){
          finished=true;
          ansa=a;
          ansb=b;
          break;
        }//if
      }//fora
      if(finished){
        break;
      }
    }//forb
    if(!finished){
      for(ll b=-30001;b<30001;b+=2){
        for(ll a=-30001;a<30001;a+=2){
          if(a*a*a*a*a-b*b*b*b*b==x){
            finished=true;
            ansa=a;
            ansb=b;
            break;
          }//if
        }//fora
        if(finished){
          break;
        }
      }//forb
    }
  }else{
    for(ll b=-30001;b<30001;b+=2){
      for(ll a=-30000;a<30000;a+=2){
        if(a*a*a*a*a-b*b*b*b*b==x){
          finished=true;
          ansa=a;
          ansb=b;
          break;
        }//if
      }//fora
      if(finished){
        break;
      }
    }//forb
    if(!finished){
      for(ll b=-30000;b<30000;b+=2){
        for(ll a=-30001;a<30001;a+=2){
          if(a*a*a*a*a-b*b*b*b*b==x){
            finished=true;
            ansa=a;
            ansb=b;
            break;
          }//if
        }//fora
        if(finished){
          break;
        }
      }//forb
    }
  }
  cout<<ansa<<" "<<ansb;
}