Cho N đường thẳng. Tìm số giao điểm lớn nhất có thể có (giả sử không có 2 đường song song, không có 3 đường đồng quy).
Công thức
Mỗi cặp đường thẳng cắt nhau tại 1 điểm → C(N,2) = N*(N-1)/2.
Ví dụ triển khai (C++)
#include <bits/stdc++.h>
using namespace std;
#define ll long long
ll countMaxIntersect(ll n) {
return n * (n - 1) / 2;
}
int main() {
ll n = 8;
cout << countMaxIntersect(n) << endl;
return 0;
}
Đầu ra
28