Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- counted = {}
- def scalar(v1, v2):
- return v1[0] * v2[0] + v1[1] * v2[1]
- def scalar_product(a, b, c):
- # a, b, c - координаты точек в формате (x, y)
- # вычислю координаты векторов
- # вектор a -> b
- k1 = tuple(sorted([coord.index(a), coord.index(b)]))
- if k1 in counted:
- Va_b = counted[k1]
- else:
- Va_b = [b[0] - a[0], b[1] - a[1]]
- counted[k1] = Va_b
- # вектор b -> c
- k1 = tuple(sorted([coord.index(c), coord.index(b)]))
- if k1 in counted:
- Vb_c = counted[k1]
- else:
- Vb_c = [c[0] - b[0], c[1] - b[1]]
- counted[k1] = Vb_c
- # вектор c -> a
- k1 = tuple(sorted([coord.index(a), coord.index(c)]))
- if tuple(k1) in counted:
- Vc_a = counted[tuple(k1)]
- else:
- Vc_a = [a[0] - c[0], a[1] - c[1]]
- counted[tuple(k1)] = Vc_a
- return scalar(Va_b, Vb_c) * scalar(Va_b, Vc_a) * scalar(Vb_c, Vc_a) == 0
- n = int(input())
- coord = []
- for i in range(n):
- coord.append(list(map(int, input().split())))
- ans = 0
- for i in range(n):
- for j in range(i + 1, n):
- for k in range(j + 1, n):
- if scalar_product(coord[i], coord[j], coord[k]):
- ans += 1
- print(ans)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement