문제
원문 보기 (영어)양의 정수 a < b < c에 대해 a² + b² = c²이고 a + b + c = perimeter를 만족하는 삼각형을 찾으세요. 조건을 만족하는 삼각형 중에서 a × b × c의 최댓값을 반환하세요. 해당하는 삼각형이 없으면 −1을 반환하세요. 이 문제는 고정된 둘레의 원문 문제를 일반화한 것으로, 여러 해답이 있을 때도 명확히 처리합니다.
pythagorean_product(perimeter)를 구현하세요.
입력
perimeter: 세 변의 합으로 주어지는 값입니다.
출력
조건을 만족하는 삼각형의 세 변 곱의 최댓값을 반환하세요. 해당 삼각형이 없으면 −1을 반환하세요.
제약 조건
3 ≤ perimeter ≤ 100,000. 곱은 부호 있는 64비트 정수 범위 내에 있습니다.
예시
예시 1
입력:
perimeter = 30
예상 출력:
expected = 780
입력:
long long perimeter = 30;
예상 출력:
long long expected = 780;
입력:
long perimeter = 30;
예상 출력:
long expected = 780;
설명
삼각형은 (5, 12, 13)입니다: 25 + 144 = 169이고 5 + 12 + 13 = 30입니다. 곱은 780입니다.
예시 2
입력:
perimeter = 11
예상 출력:
expected = -1
입력:
long long perimeter = 11;
예상 출력:
long long expected = -1;
입력:
long perimeter = 11;
예상 출력:
long expected = -1;
설명
증가하는 양의 정수 직각삼각형 변의 합이 11이 되는 경우는 없습니다.
참고 자료
이 문제는 CodeUtility에 맞게 수정되었습니다. 위의 설명과 제한 조건을 따르세요.