본문 바로가기
with my rubber duck/codingTest

[백준 1152] 단어의 개수 쉬운문제 풀라다가 더 빡침

by stilinski 2022. 7. 22.
728x90

https://www.acmicpc.net/problem/1152

 

1152번: 단어의 개수

첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열

www.acmicpc.net

어제랑 오늘 좀 공부가 안돼서 어제는 코테 안풀고 오늘은 쉬운거라도 하나 풀어야겠다 싶어서 쉬운거 골랐는데 얨병


import java.util.Scanner;

class Main{
    public static void main(String args[]){
        Scanner sc = new Scanner(System.in);
        String sentence = sc.nextLine().strip();
        String[] words = sentence.split(" ");
        
        System.out.println(words.length);

    }
}

도대체 어디가 틀린건지 모르겠네
어디가 틀렸다는거야?
어디가? 오디가?

++ 0723 복습

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String line = br.readLine();
        
        StringTokenizer st = new StringTokenizer(line);
        int cnt = 0;
        while(st.hasMoreTokens()){
            st.nextToken();
            cnt++;
        }
        System.out.println(cnt);
    }
}

뭐야? 아무생각없이 bufferedReader로 풀어봤는데 맞음;; 장난똥때리나
시간초과였던건가? 아니그럼 시간초과라고 하던가!!@

이거 분명 단어수 세는 거 있을 거 같아서 ide로 확인해봤더니 역시 countTokens라는 method있음.

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String line = br.readLine();
        
        StringTokenizer st = new StringTokenizer(line);
  
        System.out.println(st.countTokens());
    }
}

훨씬 좋군

 

 

ㅋㅋㅋ 어제 풀다가 빡침의 연속

728x90

댓글