Pagini recente » Cod sursa (job #1404836) | Cod sursa (job #1064284) | Cod sursa (job #1642105) | Cod sursa (job #2547971) | Cod sursa (job #1802774)
#include <fstream>
#include <unordered_map>
struct point
{
int x, y;
};
int n, a, b;
point pts[1000];
std::unordered_map<double, int> test;
long long result;
int main()
{
std::ifstream fin("trapez.in");
fin>>n;
for (int i = 0; i < n; ++i)
{
fin>>a>>b;
*(pts+i) = point{a,b};
}
for (int i = 0; i < n; ++i)
{
for (int j = i+1; i < n-1; ++j)
{
a = (*(pts+i)).x - (*(pts+j)).x;
b = (*(pts+i)).y - (*(pts+j)).y;
int test2 = test[(double(b)/double(a))];
result+=test2;
test[(double(b)/double(a))] = test2+1;
}
}
fin.close();
std::ofstream fout("trapez.out");
fout << result;
fout.close();
}