fork(1) download
  1. #include <iostream>
  2. #include <sstream>
  3. #include <vector>
  4. using namespace std;
  5.  
  6. vector <pair <long long,long long> > punkty;
  7.  
  8. int main() {
  9. int x, y, n;
  10. long long a, b, c;
  11. int licznik = 0;
  12. stringstream ss;
  13.  
  14. cin >> n;
  15. while(cin >> x){
  16. cin >> y;
  17. punkty.push_back(make_pair(x,y));
  18. }
  19.  
  20. for(int i = 0; i < n-2; i++)
  21. for(int j = i + 1; j < n-1; j++)
  22. for(int k = j + 1; k < n; k++){
  23. a = (punkty[i].first - punkty[j].first) * (punkty[i].first - punkty[j].first) + (punkty[i].second - punkty[j].second) * (punkty[i].second - punkty[j].second);
  24. b = (punkty[i].first - punkty[k].first) * (punkty[i].first - punkty[k].first) + (punkty[i].second - punkty[k].second) * (punkty[i].second - punkty[k].second);
  25. c = (punkty[j].first - punkty[k].first) * (punkty[j].first - punkty[k].first) + (punkty[j].second - punkty[k].second) * (punkty[j].second - punkty[k].second);
  26. if(a&&b&&c){
  27. if((a == b + c)||(b == a + c)||(c == a + b)){
  28. licznik++;
  29. ss << i <<", " << j <<", "<< k << endl;
  30. }
  31. }
  32. }
  33. cout << licznik << endl;
  34. cout << ss.str();
  35. return 0;
  36. }
Success #stdin #stdout 0s 3480KB
stdin
13
0 0
0 3
2 0
0 6
4 0
4 6
10 1
2 3
-1 0
0 -1
999999 -999999
999999 999999
-999999 999999
stdout
28
0, 1, 2
0, 1, 4
0, 1, 7
0, 1, 8
0, 2, 3
0, 2, 7
0, 2, 9
0, 3, 4
0, 3, 5
0, 3, 8
0, 4, 5
0, 4, 9
0, 8, 9
0, 10, 11
0, 11, 12
1, 2, 7
1, 3, 5
1, 3, 7
1, 7, 9
2, 4, 5
2, 4, 7
2, 7, 8
3, 4, 5
3, 5, 9
4, 5, 8
5, 6, 8
7, 8, 9
10, 11, 12