#include <bits/stdc++.h>
using namespace std;
bool unit(float x1, float x2) {
  if (abs(x1 - x2) == 0.0) {
    return true;
  } else
    return false;
}
int main() {
  int A, B, N;
  float ans, ck;
  cin >> A >> B >> N;
  if (B == 0) {
    cout << 0 << endl;
    return 0;
  } else if (A == 0 && B > 0) {
    cout << "No solution" << endl;
    return 0;
  }
  if (A * B < 0 && N % 2 == 0) {
    cout << "No solution" << endl;
    return 0;
  }
  bool flag = false;
  if (A * B < 0 && N % 2 != 0) {
    if (A < 0) {
      A = A * -1;
    }
    if (B < 0) {
      B = B * -1;
    }
    flag = true;
  }
  ans = pow(B / A, 1.0 / N);
  ck = ceil(ans);
  if (unit(ans, ck)) {
    if (flag == true)
      cout << ans * -1 << endl;
    else
      cout << ans << endl;
  } else {
    cout << "No solution" << endl;
  }
  return 0;
}
