#include <bits/stdc++.h>
using namespace std;
bool is_right(pair<int, long long> p1, pair<int, long long> p2,
              pair<int, long long> p3) {
  return (p2.first - p1.first) * (p3.second - p1.second) <
         (p2.second - p1.second) * (p3.first - p1.first);
}
const int N = 1e5 + 5;
vector<pair<int, long long> > A;
pair<int, long long> a[N];
int n;
void read_input() {
  cin >> n;
  for (int i = 0; i < n; i++) {
    int x, y;
    cin >> x >> y;
    a[i] = {x, y - 1LL * x * x};
  }
}
void solve() {
  sort(a, a + n);
  for (int i = 0; i < n; A.push_back(a[i++]))
    while (A.size() > 1 && !is_right(A[A.size() - 2], A.back(), a[i]))
      A.pop_back();
  cout << A.size() - (A.size() > 1 && A[0].first == A[1].first) - 1;
}
int main() {
  ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  read_input(), solve();
  return 0;
}
