본문 바로가기
알고리즘/문자와 문자열

2864 5와6의차이

by tryotto 2020. 1. 4.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <stdio.h>
#include <string.h>
#include <math.h>
 
int toMax(char* arr) {
    int len = strlen(arr) - 1, sum = 0;
    for (int i = len; i >= 0; i--) {
        if (arr[i] == '5') {
            sum += 6 * pow(10, len - i);
        }
        else {
            sum += ((int)arr[i] - 48* pow(10, len - i);
        }
    }
    return sum;
}
 
int toMin(char* arr) {
    int len = strlen(arr) - 1, sum = 0;
    for (int i = len; i >= 0; i--) {
        if (arr[i] == '6') {
            sum += 5 * pow(10, len - i);
        }
        else {
            sum += ((int)arr[i] - 48* pow(10, len - i);
        }
    }
    return sum;
}
 
char a[1000001= { 0 };
char b[1000001= { 0 };
int main() {
    scanf("%s %s"&a, &b);
 
    int maxA = toMax(a), minA = toMin(a);
    int maxB = toMax(b), minB = toMin(b);
 
    printf("%d %d", minA + minB, maxA + maxB);
}
cs

main 함수 내에서 지역변수 꼴로 배열을 선언할 경우, 선언이 가능한 배열의 크기에 제한이 생긴다

따라서, 전역변수 a와 b 로 선언을 해줬는데 잘 돌아갔다


'알고리즘 > 문자와 문자열' 카테고리의 다른 글

2902 KMP는 왜 KMP 일까?  (0) 2020.01.04
10988 팰린드롬인지 확인하기  (0) 2020.01.04
10987 모음의 갯수  (0) 2020.01.04
1316 그룹 단어 체크  (0) 2020.01.04
5622 다이얼  (0) 2020.01.04