[백준 String] 1152번 문제

Kwon·2023년 11월 15일

백준

목록 보기
12/22
post-thumbnail

백준 1152번 문제

풀이

  • 한 문장 안에 단어가 몇개 들어있는지 확인하는 문제
  • 문장 앞 공백이 있다면 생략 후 단어 개수 세기
  • 중복 단어 허용
  • 개인적으로 쉽게 풀었지만, 문장 맨 처음 빈칸 있을 시 어떻게 해결해야 할 지 약간 고민 했던 문제
import java.util.Scanner;

public class String8 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String sentence = sc.nextLine();
        String[] S = sentence.split(" ");
        int result = 0;
        for (int i = 0; i < S.length; i++) {
            if(S[i].isEmpty()) continue;
            result++;
        }
        System.out.println(result);
    }
}

1. 배열 설정

Scanner sc = new Scanner(System.in);
String sentence = sc.nextLine();
String[] S = sentence.split(" ");

원하는 문장 입력 후 split을 이용해 빈 공간 별로 단어를 나눴다.

2. 반복문

int result = 0;
for (int i = 0; i < S.length; i++) {
    if(S[i].isEmpty()) continue;
    result++;
}
System.out.println(result);

result에 문장 단어 개수 카운팅 될 때 마다 +1 해주고, 만일 문장 맨 앞에 빈 칸이 존재한다면, split 사용해도 빈 칸은 단어로 간주되기 때문에 isEmpty() 함수 사용함으로써 해당 단어가 비어 있는지 아닌지 확인하는 작업이 필요하다.

profile
📲 @bu_kwon_2 / 💻 dnu05043.log / ⌨ Back-end / 🦁 LikeLion

0개의 댓글