반응형
출처: http://jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=288&sca=2040
Approach
문자열을 입력받아 길이 len(string)를 구해서 뒤에서 부터 문자를 다시 저장합니다
출력할 때는 아래와 같이 35603200 → 00230653 ( leading zero가 발 생할 수 있는 숫자를 주의합니다.)
Input
146160490
35603200
175268372
0
Output
94061641 31
230653 19
273862571 41
#include <stdio.h>
int len(const char* str) {
int ret = 0;
for (;;) {
if (str[ret] == '\0') break;
ret++;
}
return ret;
}
int strcmp(const char* s, const char* t) {
while (*s && *s == *t) s++, t++;
return *s - *t;
}
char num[30], ans[30];
int main() {
// freopen("input.txt", "r", stdin);
while (1) {
scanf("%s", num);
if (strcmp("0", num) == 0) {
break;
}
int sum = 0;
int sLen = len(num);
for (int i = sLen - 1, j=0; i >= 0; --i, ++j) {
ans[j] = num[i];
sum = sum + (num[i] - 48);
}
int idx;
// 숫자를 뒤집었을 때, leading zero 제거
for (idx = 0; idx < sLen; ++idx) {
if (ans[idx] != '0') break;
}
for (; idx < sLen; ++idx) {
printf("%c", ans[idx]);
}
printf(" %d\n", sum);
}
}
반응형
'PS 문제 풀이 > Jungol' 카테고리의 다른 글
[Jungol] 정올 1495 대각선 지그재그 (0) | 2021.03.17 |
---|---|
[Jungol] 정올 1331 문자마름모 (0) | 2021.03.17 |
[Jungol] 정올 1692 곱셈 (0) | 2021.03.17 |
[Jungol] 정올 1097 앞뒤 같은 제곱 (0) | 2021.03.17 |
[Jungol] 정올 2071 파스칼 삼각형 (0) | 2021.03.17 |
댓글