#include <bits/stdc++.h>
using namespace std;

const int MAXN = 1e3 + 10;
int n, x[MAXN], y[MAXN], ans;

int read()
{
	int sum = 0, fh = 1; char ch = getchar();
	while (ch < '0' || ch > '9') {if (ch == '-') fh = -1; ch = getchar();}
	while (ch >= '0' && ch <= '9') {sum = (sum << 3) + (sum << 1) + (ch ^ 48); ch = getchar();}
	return sum * fh;
}

int main()
{
	n = read();
	for (int i = 1; i <= n; ++i) x[i] = read(), y[i] = read();
	for (int i = 1; i <= n; ++i)
		for (int j = i + 1; j <= n; ++j)
		{
			if ((double)(y[j] - y[i]) / (x[j] - x[i]) >= -1 && (double)(y[j] - y[i]) / (x[j] - x[i]) <= 1) ans++;
		}
	cout << ans << "\n";
	return 0;
}
#include <iostream>
#include <string>
#include <vector>
#include <cmath>
#include <map>
#include <numeric>
#include <iomanip>
#include <algorithm>
using namespace std;

int main(void) {
	double n, d, h,nd,nh,rus;

	rus = 0.0;
	cin >> n >> d >> h;

	for (int i = 0;i < n;i++) {
		cin >> nd >> nh;

		if (((h - nh)*(-1.0)*nd / (d - nd)) + nh >= rus) {
			rus = ((h - nh)*(-1.0)*nd / (d - nd)) + nh;
		}

	}

	cout << fixed << setprecision(10) << rus << endl;
}