#include #include #include #include #include using namespace std; vector v; double getlen(int x1, int y1, int x2, int y2) { return (x1-x2)*(x1-x2)+(y1-y2)*(y1-y2); } bool eq(double a, double b) { return a == b; } int main() { FILE *fin = fopen("tri.in", "r"); FILE *fout = fopen("tri.out", "w"); int x1, x2, x3, y1, y2, y3, i, n; double l1, l2, l3; fscanf(fin, "%d", &n); for (i = 0; i < n; i++) { fscanf(fin, "%d %d %d %d %d %d", &x1, &y1, &x2, &y2, &x3, &y3); x1 += 1000; y1 += 1000; x2 += 1000; y2 += 1000; x3 += 1000; y3 += 1000; l1 = getlen(x1, y1, x2, y2); l2 = getlen(x1, y1, x3, y3); l3 = getlen(x2, y2, x3, y3); if (eq(l1, l2)) { v.push_back( (double)l1/l3 ); } else if (eq(l1, l3)) { v.push_back( (double)l1/l2 ); } else if (eq(l2, l3)) { v.push_back( (double)l2/l1 ); } } sort(v.begin(), v.end()); int m,s; m = 1; s = 1; for (i = 1; i < v.size(); i++) { if (v[i] != v[i-1]) { if (s > m) m = s; s = 1; } else { s++; } } fprintf(fout, "%d", s); return 0; }