#include <bits/stdc++.h>
using namespace std;
const long long N = 2005;
long long x[N], y[N];
long long n;
long long gcd(long long a, long long b) {
  if (b == 0)
    return a;
  else
    return gcd(b, a % b);
}
int32_t main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  ;
  cin >> n;
  for (long long i = 1; i <= n; i++) cin >> x[i] >> y[i];
  long long ans = (n * (n - 1) * (n - 2)) / 6;
  long long sub = 0;
  for (long long i = 1; i < n; i++) {
    map<pair<long long, long long>, long long> m;
    for (long long j = i + 1; j <= n; j++) {
      long long xd = x[j] - x[i];
      long long yd = y[j] - y[i];
      if (xd == 0)
        yd = 0;
      else if (yd == 0)
        xd = 1;
      else {
        long long r = gcd(xd, yd);
        xd /= r;
        yd /= r;
        if (xd < 0 && yd > 0) {
          xd *= -1;
          yd *= -1;
        }
      }
      m[{xd, yd}]++;
    }
    for (auto it : m) {
      long long k = it.second;
      sub += (k * (k - 1)) / 2;
    }
  }
  cout << ans - sub;
  return 0;
}
