#include <bits/stdc++.h>
const int N = 100100;
const long long mod = 1e9 + 7;
using namespace std;
int n;
pair<long long, long long> a[N];
int orien(int i, int j, int h) {
  long long o = (a[j].first - a[i].first) * (a[h].second - a[i].second) -
                (a[j].second - a[i].second) * (a[h].first - a[i].first);
  if (o > 0) {
    return 1;
  } else if (o < 0) {
    return -1;
  }
  return 0;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin >> n;
  for (int i = 1; i <= n; i++) {
    cin >> a[i].first >> a[i].second;
    a[i].second -= a[i].first * a[i].first;
  }
  sort(a + 1, a + n + 1);
  vector<int> res;
  for (int i = 1; i <= n; i++) {
    if (i + 1 <= n && a[i].first == a[i + 1].first) {
      continue;
    }
    int l = res.size();
    while (l > 1 && orien(res[l - 2], res[l - 1], i) != -1) {
      res.pop_back();
      l--;
    }
    res.push_back(i);
  }
  cout << res.size() - 1 << "\n";
}
