Post

[백준] 10821번 - 정수의 개수 [Java][C++]

[백준] 10821번 - 정수의 개수 [Java][C++]

문제 링크


1. 문제 풀이

문자열 $S$ 에 포함된 정수는 콤마로 구분된다. 따라서 콤마를 기준으로 파싱한 후 각 정수의 개수를 구하면 된다.


2. 코드

1. 파싱 [Java]

split 메서드와 배열의 길이인 length 를 조합하여 정수의 개수를 구했다.

1
2
3
4
5
6
7
8
9
10
import java.io.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        String[] line = br.readLine().split(",");
        System.out.println(line.length);
    }
}

2. 파싱 [C++]

string 으로 한 줄을 입력받은 후 콤마의 개수를 셌다. 정수의 개수는 콤마의 개수 $+1$ 이다.

1
2
3
4
5
6
7
8
9
10
11
#include <bits/stdc++.h>
using namespace std;

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    string line;
    cin >> line;
    cout << count(line.begin(), line.end(), ',') + 1;
}

3. 풀이 정보

1. 파싱 [Java]

언어시간메모리코드 길이
Java 11100 ms14192 KB285 B

2. 파싱 [C++]

언어시간메모리코드 길이
C++ 170 ms2024 KB206 B

This post is licensed under CC BY 4.0 by the author.