😎풀이

  1. n을 3중 반복
    1-1. i 제곱 + j 제곱 = k 제곱 인 경우 확인
    1-2. 가능한 삼각형의 수 누적
  2. 확인된 삼각형 경우의 수에 2를 곱하여 반환 이유는 아래와 같음음
    2-1. 3^2 + 4^2 = 5^2
    2-2. 4^2 + 3^2 = 5^2
function countTriples(n: number): number {
    let triples = 0
    for(let i = 1; i <= n - 2; i++) {
        const iSquare = i * i
        for(let j = i + 1; j <= n - 1; j++) {
            const jSquare = j * j
            for(let k = j + 1; k <= n; k++) {
                const kSquare = k * k
                if(iSquare + jSquare === kSquare) triples++
            }
        }
    }
    return triples * 2
};
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글