1. 문제 링크
1152번: 단어의 개수
첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열
www.acmicpc.net
2. 문제 및 입출력예제
3. 문제 풀이
공백 기준으로 단어의 개수를 세는 코드를 작성하면 된다.
전체 입력의 앞뒤 공백을 trim()으로 제거한 문자열의 길이와
그 문자열에서 replace()로 공백을 모두 없앤 문자열의 길이의 차이 +1이 단어의 개수라고 생각했다.
하지만 82%? 86%정도에서 틀렸습니다를 만났다.
그 이유를 찾아보니까 공백만 입력될 경우에도 1이 출력되고 있었다.
그 부분을 수정해서 제출하니까 성공했다.
4. 코드
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
String str = br.readLine();
String a = str.trim();
String ing = a.replace(" ", "");
if(ing.equals("")) System.out.println(0);
else
System.out.println(a.length()-ing.length()+1);
}
}
'ALGORITHM' 카테고리의 다른 글
백준 1436 영화감독 숌 (Java) (0) | 2023.01.21 |
---|---|
백준 1009 분산처리 (Java) (0) | 2023.01.20 |
백준 1546 평균 (Java) (0) | 2023.01.18 |
백준 3052 나머지 (Java) (0) | 2023.01.17 |
백준 2869 달팽이는 올라가고 싶다 (Java) (0) | 2023.01.16 |