BOJ::1152 단어의 개수
https://www.acmicpc.net/problem/1152
자바에서는 StringTokenizer 클래스를 이용하여 아주아주 쉽게 풀 수 있지만.....
C++로 풀때는 자꾸 틀렸다고 나오길래 왜그러지 하고 생각해보니..
맨처음과 맨 마지막에 ' ' 띄어쓰기가 나올 수 있었다... 그것만 처리해주면 된다.
JAVA
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; class Main{ public static void main(String args[]) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int cnt=0; while(st.hasMoreTokens()){ cnt ++; st.nextToken(); } System.out.println(cnt); } } | cs |
C++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | #include <iostream> #include <string> using namespace std; int main() { string s; getline(cin, s); int cnt = 0,n; n = s.length(); for (int i = 0; i < n; i++) { if (s.at(i) == ' ') { cnt++; } } if (s.at(0) == ' ') { cnt--; } if (s.at(n - 1) == ' ') { cnt--; } cout << ++cnt << endl; } | cs |
'BOJ::문제풀이' 카테고리의 다른 글
1157 이상한 곱셈 (0) | 2017.12.30 |
---|---|
1157 단어 공부 (0) | 2017.12.30 |
1149 RGB거리 (0) | 2017.12.30 |
1065 한수 (0) | 2017.12.30 |
1049 기타줄 (0) | 2017.12.30 |