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 |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38905 |