숫자 형식의 데이터를 뒤집어야할때 사용하기 용이한 규칙이 있다.
int tmp = 123;
int res = 0;
while(tmp > 0) {
int t = tmp % 10; // 무조건 1의자리
res = res * 10 + t;
tmp = tmp / 10;
}
tmp에 할당된 123을 뒤집는다고 가정할때
1. 대상을 10으로 나눈 나머지를 구하면 일의자리 숫자가 리턴되게 된다.
2. 최종값이 들어갈 res변수를 0으로 초기화 하고 반복문이 실행될때 마다 곱하기 10 더하기 나머지를 해준다.
3. 10을 곱하면서 자리수를 만들게 되고 그 뒤에 나머지를 더해준다.
4. tmp에 10을 나눠서 이제 필요없어진 일의자리수를 제거한다.
5. tmp가 0보다 클때 까지 반복한다.
'알고리즘' 카테고리의 다른 글
[알고리즘] 에라토스테네스 체 (0) | 2022.05.12 |
---|---|
[알고리즘] 다양한 정렬 알고리즘 (0) | 2022.04.28 |
[프로그래머스] 모의고사 (0) | 2022.03.04 |
[프로그래머스] 주식가격 (0) | 2022.02.01 |
[프로그래머스] 프린트 (0) | 2022.01.23 |
댓글