ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 20250314
    카테고리 없음 2025. 3. 14. 00:12
    3. 문장 속 단어
     

    설명

    한 개의 문장이 주어지면 그 문장 속에서 가장 긴 단어를 출력하는 프로그램을 작성하세요.

    문장속의 각 단어는 공백으로 구분됩니다.

    입력

    첫 줄에 길이가 100을 넘지 않는 한 개의 문장이 주어집니다. 문장은 영어 알파벳으로만 구성되어 있습니다.

    출력

    첫 줄에 가장 긴 단어를 출력한다. 가장 길이가 긴 단어가 여러개일 경우 문장속에서 가장 앞쪽에 위치한

    단어를 답으로 합니다.

    예시 입력 1 

    it is time to study
    

    예시 출력 1

    study

     

    문제 풀이

     

    package org.example.infrenJavaCodingTest;
    
    import java.util.Scanner;
    
    public class chap2_3 {
    //    public String solution(String str) {
    //        String answer = "";
    //        int m = Integer.MIN_VALUE;
    //        // 공백을 기준으로 문자 나누기
    //        String[] s = str.split(" ");
    //        // 가장 긴 물자열 찾기
    //        for(String x : s){
    //            int len = x.length();
    //            if(len>m){
    //                m=len;
    //                answer=x;
    //            }
    //        }
    //        return answer;
    //    }
        public String solution(String str) {
            String answer = "";
            int m = Integer.MIN_VALUE;
            // split 함수 ?
            String[] s = str.split(" ");
            // for-each 문법
            // 무엇? 언제? 장점? 단점? 대체? 문법?
            for(String x : s){
                int len = x.length();
                // 최대값 갱신 알고리즘
                if(len > m){
                    m = len; // 최대 길이 저장
                    answer = x; // 최대 길이의 단어 저장
                }
            }
            return answer;
        }
    
        public static void main(String[] args) {
            chap2_3 T = new chap2_3();
            Scanner kb = new Scanner(System.in);
            // 한줄을 받아야 하므로, Line으로 받는다
            String str = kb.nextLine();
            System.out.println(T.solution(str));
    
        }
    }
    

     

    학습내용

     

Designed by Tistory.