#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using pll = pair<ll, ll>;
const int mxN = 1e5 + 1;
int n;
pll a[mxN];
vector<pll> hull;
bool ccw(pll p, pll q, pll r) {
  return (p.first * (q.second - r.second) + q.first * (r.second - p.second) +
          r.first * (p.second - q.second)) >= 0;
}
int main() {
  cin.tie(0)->sync_with_stdio(0);
  cin >> n;
  if (n < 3) return cout << n - 1 << '\n', 0;
  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);
  for (int i = 1; i <= n; ++i) {
    while (hull.size() > 1 && ccw(hull[hull.size() - 2], hull.back(), a[i]))
      hull.pop_back();
    hull.push_back(a[i]);
  }
  cout << hull.size() - (hull[0].first == hull[1].first ? 2 : 1) << '\n';
}
