BA ĐIỂM THẲNG HÀNG

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}\)\(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\).

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. qtaydzs1tg (17/23)
  2. ducanhbc (16/23)
  3. duythai (12/18)
Trong 7 ngày
  1. haiyen2011 (69/149)
  2. khanhchi_29 (66/81)
  3. qtaydzs1tg (65/98)
Trong 30 ngày
  1. nongvantien11 (115/189)
  2. trungo0 (112/199)
  3. ngocbichh (110/267)
Thống kê
AC/Sub: 120817/226949
Pascal: 18142
C++: 157988
Python: 50747
Lượt xem/tải tests: 41020

Lưu Hải Phong - 2020
[email protected]