#include <bits/stdc++.h>
using namespace std;
const int xsta[] = {1, -1, -2, -1, 1, 2}, ysta[] = {2, 2, 0, -2, -2, 0},
          xmov[] = {-2, -1, 1, 2, 1, -1}, ymov[] = {0, -2, -2, 0, 2, 2};
long long n;
int main() {
  scanf("%lld", &n);
  if (!n) {
    puts("0 0");
    return 0;
  }
  long long r = 0, l = 577350270;
  while (l - r > 1) {
    long long m = r + ((l - r) >> 1);
    if (3 * m * (m + 1) >= n)
      l = m;
    else
      r = m;
  }
  long long j = n - 3 * l * (l - 1);
  j = (j + 5 * l) % (6 * l);
  n = j / l;
  r = j % l;
  long long x = xsta[n] * l + xmov[n] * r, y = ysta[n] * l + ymov[n] * r;
  printf("%I64d %I64d\n", x, y);
  return 0;
}
