Trong hệ tọa độ Đề Các vuông góc Oxy, cho \(n\) điểm phân biệt \(a_{1},a_{2},\ldots,a_{n}\). Mỗi điểm \(a_{}i\ (i = 1,\ 2,..,n)\) được xác định bởi hoành độ và tung độ của điểm đó. Ba điểm phân biệt được gọi là thẳng hàng với nhau khi và chỉ khi chúng nằm trên cùng một đường thẳng.
Yêu cầu: Hãy đếm trong số \(n\) điểm đã cho có bao nhiêu bộ ba điểm thẳng hàng? Biết rằng hai bộ được gọi là khác nhau nếu chúng khác nhau ít nhất một điểm.
Dữ liệu vào:
- Dòng đầu tiên ghi số nguyên dương \(n\ (3 < n < \ 2000)\);
- \(n\) dòng tiếp theo, mỗi dòng ghi 2 số nguyên \(x_{i}\) và \(y_{i}\) tương ứng là hoành độ và tung độ của điểm \(a_{i}\) với \(i\) từ 1 đến \(n\ (|x_{i}| < 10^{5},\ |y_{i}| < 10^{5})\).
Kết quả:
+ Ghi một số duy nhất là số bộ ba điểm thẳng hàng tìm được.
Ví dụ:
| Input | Output | Input | Output | |
|---|---|---|---|---|
| 3 -1 -2 1 0 3 2 | 1 | 4 -1 -2 1 0 3 2 4 3 | 4 |
Giới hạn:
- Subtask 1: tương ứng 60% số điểm điểm với \(n = 3\);
- Subtask 2: tương ứng 20% số điểm với \(3 < n\ \leq \ 100\);
- Subtask 3: tương ứng 20% số điểm với \(100 < n \leq \ 2000\).
| Code tích cực |
|---|
| Trong 24h |
|
| Trong 7 ngày |
|
| Trong 30 ngày |
|
| Kỳ thi |
|---|
| Lập trình cơ bản |
| Luyện thi Chuyên Tin - CB |
| Luyện thi Chuyên Tin - NC |
| Tuyển tập Đề thi Tuyển sinh 10 |
| Tuyển tập Đề thi HSG THCS |
| Tuyển tập Đề thi HSG THPT |
| Tuyển tập Đề thi HSG Chọn đội tuyển |
| Thống kê |
|---|
|
AC/Sub: 120817/226949 Pascal: 18142 C++: 157988 Python: 50747 Lượt xem/tải tests: 41100 |