반응형
문제
세 자연수 $a$, $b$, $c$ 가 피타고라스 정리 $a^{2}+b^{2}=c^{2}$를 만족하면 피타고라스 수라고 부릅니다 (여기서 $a < b < c$ ).
예를 들면 $3^{2} + 4^{2} = 9 + 16 = 25 = 5^{2}$이므로 $3$, $4$, $5$는 피타고라스 수입니다.
$a + b + c = 1000$ 인 피타고라스 수 $a$, $b$, $c$는 한 가지 뿐입니다. 이 때, $a × b × c$ 는 얼마입니까?
코드
#include <stdio.h>
int main(void)
{
int i, j, k;
for (i = 1; i < 1000; i++)
{
for (j = 2; j < 1000; j++)
{
if (i < j)
{
k = 1000 - i - j;
if (i * i + j * j == k * k)
{
printf("%d %d %d\n", i, j, k);
printf("%d\n", i * j * k);
}
}
}
}
return 0;
}
세 자연수를 i, j, k로 놓고, i < j < k 이므로 i는 1, j는 2부터 시작했다. k는 조건을 만족하도록 1000 - i - j로 했다.
피타고라스 공식에 맞으면 세 수를 출력하고, 다음 줄에 세 수를 곱한 값을 출력하도록 했다.
조건을 만족하는 세 수는 200, 375, 425이고, 정답은 31875000이다.
반응형
'프로그래밍 > Baekjoon' 카테고리의 다른 글
(C언어)프로젝트 오일러(Project Euler)11. 20×20 격자에서 연속된 네 숫자의 곱 중 최대값 (0) | 2020.05.25 |
---|---|
(C언어)프로젝트 오일러(Project Euler)10. 이백만 이하 소수의 합 (0) | 2020.05.25 |
(C언어)프로젝트 오일러(Project Euler)8. 1000자리 숫자 안에서 이어지는 5자리 숫자의 곱 중 최대값은? (0) | 2020.05.25 |
(C언어)프로젝트 오일러(Project Euler)7. 10001번째의 소수 (0) | 2020.05.25 |
(C언어)프로젝트 오일러(Project Euler) 6. 1부터 100까지 "제곱의 합"과 "합의 제곱"의 차는? (0) | 2020.05.25 |