'회문 알고리즘'에 해당되는 글 1

  1. 2011/10/07 Palindrome

Palindrome

크리에이티브 커먼즈 라이선스
Creative Commons License
Palindrome(이하 회문)은 앞/뒤 어느쪽으로 읽어도 같은 말이 되는 어구를 의미한다.
예) 191, 4325234, 123321, eye

어떤 수를 받아서 그 수를 뒤집은(reverse) 다음 원래의 수에 더하여 나온 값이 회문이 될 때까지, 뒤집은 수 더하기를 반복하여 회문을 찾는 프로그램을 작성하라.

<예>
입력값이 195인 경우
  1) 195 + 591 = 786
  2) 786 + 687 = 1473
  3) 1473 + 3741 = 5214
  4) 5214 + 4125 = 9339
출력 : 195 4 9339

<주의사항>
  • 회문을 찾을 수 없는 수도 있다.
    예) 아직 증명되지는 않았지만 196은 회문을 찾을 수 없는 수 이다.
  • 뒤집어 더하는 것을 100번 해도 회문을 찾을 수 없는 경우는 회문이 없다고 가정한다.

<입/출력>
  • 입력 : 프로그램의 첫번째 인자로 숫자를 받는다.
    예) 입력값에 오류는 없다고 가정한다. 즉, 오류처리를 할 필요가 없다.
  • 출력 : 입력받은 숫자와 회문ㅇ르 발견하기 위해 뒤집어 더한 횟수, 그리고 구해진 회문
    예) 195 4 9339
    예) 196 is not palindrome 

소스보기


저작자 표시 비영리 변경 금지

'개발 > JAVA' 카테고리의 다른 글

가장 얇은 지갑 만들기  (0) 2011/10/07
Palindrome  (0) 2011/10/07
JAVA 메모리 영역 구조  (0) 2011/09/01
Vector와 ArrayList의 비교  (0) 2011/09/01
트랙백0 댓글0