https://www.acmicpc.net/problem/1152
1. Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
String trimStr = str.trim();
if(trimStr.isEmpty()) {
System.out.println(0);
}
else {
System.out.println(trimStr.split(" ").length);
}
}
}
|
cs |
풀이 :
먼저 스캐너로 문자열 입력을 받은 후 trim()을 사용하여 앞 뒤 공백 제거 (앞 뒤 공백 제거한 문자열이 trimStr)
그리고 trimStr을 split(" ")을 사용하여 공백으로 문자열을 자른후 길이를 출력
여기서 주의할 점이 trim으로 앞뒤 공백을 제거했으니 단어사이에 공백만 제거하면 된다고 생각하겠지만
공백을 연속해서 두 번 치면 맨 앞에 공백은 사라지지만 두 번째 공백은 안 사라져서 길이가 1로 나오게 된다.
따라서 if문을 이용하여 조건을 걸어주어야하는데
앞뒤 공백 제거한 문자열 trimStr을 isEmpty를 이용하여 문자열이 공백이면 0이 출력되도록 해주어야 한다.
2. Python
1
2
3
4
5
6
|
str = input()
stripStr = str.strip()
if stripStr == "":
print(0)
else:
print(len(stripStr.split(" ")))
|
cs |
풀이 : 자바와 똑같은 방식으로 풀었다.
다만 자바에서는 양쪽 공백을 trim()으로제거해주었지만 파이썬에서는 strip()을 사용하였다.
'코딩테스트 > 백준' 카테고리의 다른 글
[백준-자바/파이썬] 4153번 직각삼각형 / 2021.09.26 (0) | 2021.09.26 |
---|---|
[백준-자바/파이썬] 3009번 네 번째 점 / 2021.09.22 (0) | 2021.09.22 |
[백준-자바/파이썬] 2908번 상수 / 2021.09.05 (0) | 2021.09.05 |
[백준-자바/파이썬] 2675번 문자열 반복 / 2021.08.28 (1) | 2021.08.28 |
[백준-자바/파이썬] 11720번 숫자의 합 / 2021.08.27 (0) | 2021.08.27 |