티스토리 뷰
문제 :
앞에서부터 읽을 때나 뒤에서부터 읽을 때나 모양이 같은 수를 대칭수(palindrome)라고 부릅니다.
두 자리 수를 곱해 만들 수 있는 대칭수 중 가장 큰 수는 9009 (= 91 × 99) 입니다.
세 자리 수를 곱해 만들 수 있는 가장 큰 대칭수는 얼마입니까?
해설 :
첨부파일에 있음.
거의 노가다 형식으로 풀었는데 다른사람 풀이를 보니...ㄷ...
훨씬 쉽게 나와있...
다른사람꺼 소스 이해하는데만 한 30분 넘게 걸린듯...
다른사람 소스)
#include <stdio.h>
int main()
{
int temp,num=0,answer,a=8,b;
for (int i = 100; i < 1000; i++)
{
for (int j = 100; j < 1000; j++)
{
temp = i*j;
b = i*j;
while (temp > 0)
{
answer = temp % 10;
temp=temp / 10;
num = num * 10 + answer;
}
if (b == num&&a<b)
{
a = num;
}
num = 0;
}
}
printf("%d", a);
return 0;
}
--내가 한 풀이보다 훨씬 쉽게 코딩하였음--
'WarGame > ProjectEuler' 카테고리의 다른 글
ProjectEuler 6번 (0) | 2018.12.20 |
---|---|
ProjectEuler 5번 (0) | 2018.12.20 |
ProjectEuler 3번 (0) | 2018.12.20 |
ProjectEuler 2번 (0) | 2018.12.20 |
ProjectEuler 1번 (0) | 2018.12.20 |