본문 바로가기

백준 온라인 저지 (BOJ) 문제풀이

백준 온라인 저지 (BOJ) 10823 더하기 2

문제

숫자와 콤마로만 이루어진 문자열 S가 주어진다. 이때, S에 포함되어있는 자연수의 합을 구하는 프로그램을 작성하시오.

S의 첫 문자와 마지막 문자는 항상 숫자이고, 콤마는 연속해서 주어지지 않는다. 주어지는 수는 항상 자연수이다.

입력

문자열 S가 여러 줄에 걸쳐서 주어진다. S의 길이는 최대 10,000이다. 포함되어있는 정수는 1,000,000보다 작거나 같은 자연수이다.

출력

문자열 S에 포함되어 있는 자연수의 합을 출력한다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#pragma warning(disable:4996)
#pragma warning(disable:6031)
char temp[10001];
char str[10001];
int main() {
    int sum = 0;
    char* ptr = NULL;
    while (scanf("%s", temp) != EOF) {
        strcat(str, temp);
    }
    ptr = strtok(str, ",");
    while (ptr != NULL) {
        sum += atoi(ptr);
        ptr = strtok(NULL",");
    }
    printf("%d\n", sum);
    return 0;
}
cs

 

긴 문자열을 하나 만든 다음에 더하기 문제와 같은 방법으로 풀었다...