# 1925. Count Square Sum Triples

## Description

A square triple (a,b,c) is a triple where a, b, and c are integers and a2 + b2 = c2.

Given an integer n, return the number of square triples such that 1 <= a, b, c <= n.

Example 1:

Input: n = 5
Output: 2
Explanation: The square triples are (3,4,5) and (4,3,5).


Example 2:

Input: n = 10
Output: 4
Explanation: The square triples are (3,4,5), (4,3,5), (6,8,10), and (8,6,10).


Constraints:

• 1 <= n <= 250

## Solutions

• class Solution {
public int countTriples(int n) {
int res = 0;
for (int a = 1; a <= n; ++a) {
for (int b = 1; b <= n; ++b) {
int t = a * a + b * b;
int c = (int) Math.sqrt(t);
if (c <= n && c * c == t) {
++res;
}
}
}
return res;
}
}

• class Solution {
public:
int countTriples(int n) {
int res = 0;
for (int a = 1; a <= n; ++a) {
for (int b = 1; b <= n; ++b) {
int t = a * a + b * b;
int c = (int) sqrt(t);
if (c <= n && c * c == t) {
++res;
}
}
}
return res;
}
};

• class Solution:
def countTriples(self, n: int) -> int:
res = 0
for a in range(1, n + 1):
for b in range(1, n + 1):
t = a**2 + b**2
c = int(sqrt(t))
if c <= n and c**2 == t:
res += 1
return res


• func countTriples(n int) int {
res := 0
for a := 1; a <= n; a++ {
for b := 1; b <= n; b++ {
t := a*a + b*b
c := int(math.Sqrt(float64(t)))
if c <= n && c*c == t {
res++
}
}
}
return res
}

• function countTriples(n: number): number {
let ans = 0;
for (let a = 1; a < n; a++) {
for (let b = 1; b < n; b++) {
const x = a * a + b * b;
const c = Math.floor(Math.sqrt(x));
if (c <= n && c * c === x) {
ans++;
}
}
}
return ans;
}