#include <stdio.h>
#include <math.h>
void f9052(long long n) {
long long a, b, c, d, beg = 2, ab, cd;
for (a = beg; a * a < n; a++)
for (b
= beg
, ab
= pow(a
, beg
); ab
< n
; b
++, ab
*= a
) for (c = beg; ab + c * c <= n; c++)
for (d
= beg
, cd
= pow(c
, beg
); ab
+ cd
<= n
; d
++, cd
*= c
) if (ab + cd == n)
printf("%lld\t%lld\t%lld\t%lld\t%lld\n", a
, b
, c
, d
, ab
+ cd
); }
int main() {
f9052(2017);
f9052(23456789);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+CnZvaWQgZjkwNTIobG9uZyBsb25nIG4pIHsKICBsb25nIGxvbmcgYSwgYiwgYywgZCwgYmVnID0gMiwgYWIsIGNkOwogIGZvciAoYSA9IGJlZzsgYSAqIGEgPCBuOyBhKyspCiAgICBmb3IgKGIgPSBiZWcsIGFiID0gcG93KGEsIGJlZyk7IGFiIDwgbjsgYisrLCBhYiAqPSBhKQogICAgICBmb3IgKGMgPSBiZWc7IGFiICsgYyAqIGMgPD0gbjsgYysrKQogICAgICAgIGZvciAoZCA9IGJlZywgY2QgPSBwb3coYywgYmVnKTsgYWIgKyBjZCA8PSBuOyBkKyssIGNkICo9IGMpCiAgICAgICAgICBpZiAoYWIgKyBjZCA9PSBuKQogICAgICAgICAgICBwcmludGYoIiVsbGRcdCVsbGRcdCVsbGRcdCVsbGRcdCVsbGRcbiIsIGEsIGIsIGMsIGQsIGFiICsgY2QpOwp9CmludCBtYWluKCkgewogIGY5MDUyKDIwMTcpOwogIGY5MDUyKDIzNDU2Nzg5KTsKICByZXR1cm4gMDsKfQ==