알고리즘,손코딩 문제

프로젝트 오일러 문제 4 : 세 자리 수를 곱해 만들 수 있는 가장 큰 대칭수는 얼마입니까?

알통몬_ 2017. 3. 11. 20:13
반응형


안녕하세요 알통몬입니다.

공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^

 

문제 : 앞에서부터 읽을 때나 뒤에서부터 읽을 때나 모양이 같은 수를 대칭수(palindrome)라고 부릅니다.

두 자리 수를 곱해 만들 수 있는 대칭수 중 가장 큰 수는 9009 (= 91 × 99) 입니다.

세 자리 수를 곱해 만들 수 있는 가장 큰 대칭수는 얼마입니까?


public class Question {


public static void main(String[] args) {

int a = 0;

int b = 0;

int gop = 0;

int pog = 0;

int max = 0;

String gop2 = "";

String pog2 = "";

for (int i = 100; i < 1000; i++) {

a = i;

for (int j = 100; j < 1000; j++) {

b = j;

gop = 0;

gop = a * b;

gop2 = String.valueOf(gop);

String gop3[] = gop2.split("");


for (int k = gop3.length - 1; k > -1; k--) {

pog2 += gop3[k];

}


System.out.println(gop2 + " : " + pog2);

if (gop2.equals(pog2)) {

if (max < gop)

max = gop;

pog2 = "";

gop2 = "";

} else {

pog2 = "";

gop2 = "";

}

}


}

System.out.println(max);

}


}

반응형