#include <bits/stdc++.h>
using namespace std;
struct pt {
  long long x, y;
} a[101010];
int n;
vector<int> s;
bool cmp(pt a, pt b) { return a.x < b.x || (a.x == b.x && a.y < b.y); }
bool cw(int u, int v, int t) {
  if (a[t].x == a[v].x) {
    return true;
  }
  return (a[u].y - a[v].y) * (a[t].x - a[v].x) >=
         (a[v].y - a[t].y) * (a[v].x - a[u].x);
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
  cin >> n;
  for (int i = 0; i < n; i++) {
    long long x, y;
    cin >> x >> y;
    a[i].x = -x;
    a[i].y = y - x * x;
  }
  sort(a, a + n, cmp);
  for (int i = 0; i < n; i++) {
    while (s.size() > 0 && a[s.back()].x == a[i].x) {
      s.pop_back();
    }
    while (s.size() > 1 && cw(s[s.size() - 2], s[s.size() - 1], i)) {
      s.pop_back();
    }
    s.push_back(i);
  }
  cout << s.size() - 1 << '\n';
  return 0;
}
