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 Kotlin (1.3.71) (judge verdict: Wrong Answer)

import java.lang.RuntimeException
import kotlin.math.absoluteValue

fun main(args: Array<String>) {
    val line = readLine()!!.trim()
    val x = line.toLong()

    val (a, b) = calc(x)

    println("${a} ${b}")
}

fun calc(x: Long): Pair<Long, Long> {

    val x1 = 1 + x
    val absX1 = x1.absoluteValue

    var i: Long = 0L

    while (true) {
        val powered = i * i * i * i * i
        val flag = if (x < 0 ) { -1 } else {1}

        if (powered == absX1) {
            return Pair(flag * i, 1)
        }

        if (powered > absX1) {
            break
        }

        i = i + 1
    }

    val x2 = 1 - x
    val absX2 = x2.absoluteValue

    i = 0L

    while (true) {
        val powered = i * i * i * i * i
        val flag = if (x < 0 ) { -1 } else {1}

        if (powered == absX2) {
            return Pair(flag * i, -1)
        }

        if (powered > absX2) {
            break
        }

        i = i + 1
    }

    // throw RuntimeException("error")

    return Pair(0L, 0L)
}