코드

public class 숫자뒤집기 {
	public static void main(String[] args) {
		int value = 12345;
		int rest = 0;
		int count = 0;
		//value의 일의 자리를 계속 자르고 맨 앞으로 보낸다.
		while(value>0) {
			int units = value % 10 ; // 일의 자리 구하기
			// 일의 자리를 계속 10곱하기 반복, 결국 뒤집기가 된다.
			rest = rest * 10 + units;
			System.out.println(value+" "+ ++count + "회 " + rest  
					+" | 일의 자리를 *10 하다보면 뒤집어진다.");
			value = value / 10;		 // 십의 자리만큼 제거
		}
		value = rest;
	}
}

결과

12345 1회 5 | 일의 자리를 *10 하다보면 뒤집어진다.
1234 2회 54 | 일의 자리를 *10 하다보면 뒤집어진다.
123 3회 543 | 일의 자리를 *10 하다보면 뒤집어진다.
12 4회 5432 | 일의 자리를 *10 하다보면 뒤집어진다.
1 5회 54321 | 일의 자리를 *10 하다보면 뒤집어진다.

핵심은 일의 자리를 때고 10씩 곱하다보면 숫자가 뒤집힌다.

'자료구조&알고리즘 > 자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비' 카테고리의 다른 글

중복문자제거  (0) 2022.11.14
격자판 최대합  (0) 2022.11.12
봉우리  (0) 2022.11.09
등수구하기  (0) 2022.11.05
문자뒤집기  (0) 2022.11.03

+ Recent posts