#include <bits/stdc++.h>
using namespace std;
pair<long long, long long> ans;
long long n;
long long c(long long o) { return o * o * o; }
void pr(long long x, long long y, long long z) {
  long long i;
  if (x == 0) {
    ans = max(ans, make_pair(y, z));
    return;
  }
  i = 1;
  while (c(i + 1) <= x) i++;
  pr(x - c(i), y + 1, z + c(i));
  if (i > 1) pr(c(i) - c(i - 1) - 1, y + 1, z + c(i - 1));
}
int main() {
  cin >> n;
  pr(n, 0, 0);
  cout << ans.first << ' ' << ans.second;
}
