#include <iostream>
#include <vector>
using namespace std;
struct Point {
int x, y; // Tọa độ của điểm
};
int main() {
int n;
cin >> n; // Nhập số lượng điểm (luôn là số chẵn)
vector<Point> points(n); // Lưu trữ danh sách các điểm
for (int i = 0; i < n; ++i) {
cin >> points[i].x >> points[i].y; // Nhập tọa độ của từng điểm
}
// Duyệt qua tất cả các cặp điểm (i, j)
for (int i = 0; i < n; ++i) {
for (int j = i + 1; j < n; ++j) {
// Đếm số điểm ở hai phía của đường thẳng
int count_pos = 0, count_neg = 0;
for (int k = 0; k < n; ++k) {
// Bỏ qua hai điểm đang xét (i, j)
if (k == i || k == j) continue;
// Tính giá trị cross product để xác định vị trí của điểm k
// (y2 - y1) * (x - x1) - (x2 - x1) * (y - y1)
long long val = (points[j].y - points[i].y)
* (points[k].x - points[i].x)
- (points[j].x - points[i].x)
* (points[k].y - points[i].y);
// Điểm k nằm ở một phía (phía dương)
if (val > 0) count_pos++;
// Điểm k nằm ở phía còn lại (phía âm)
else if (val < 0) count_neg++;
}
// Nếu số điểm ở hai phía bằng nhau, in ra cặp điểm (i, j)
if (count_pos == count_neg) {
// In chỉ số của hai điểm (theo thứ tự nhập)
cout << i + 1 << " " << j + 1 << endl;
// Thoát chương trình vì đã tìm thấy đáp án
return 0;
}
}
}
return 0;
}