[JAVA] 3. 문장 속 가장 긴 단어 찾기
2021. 4. 14. 00:36
728x90
설명
한 개의 문장이 주어지면 그 문장 속에서 가장 긴 단어를 출력하는 프로그램을 작성하세요.
문장속의 각 단어는 공백으로 구분됩니다.
예시 입력 1
it is time to study
예시 출력 1
study
풀이
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
// 문장을 입력받는다.
String input = in.next();
// 문장을 빈칸으로 잘라 String배열에 문자를 담는다.
String[] arr = input.split(" ");
// 문자의 길이를 담는다
int length = 0;
// 문자가 있는 인덱스번호를 담는다.
int index = 0;
for (int i=0; i<arr.length; i++) {
// length와 배열담긴 문자의 길이를 비교한다.
if(length < arr[i].length()) {
// 긴 쪽의 문자열길이를 length에 담는다.
length = arr[i].length();
// 인덱스 번호를 담는다.
index = i;
}
}
// 가장 긴 문자열을 출력
System.out.println(arr[index]);
}
}
다른 풀이
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
// 문장을 입력받는다.
String input = in.next();
// 문장을 빈칸으로 잘라 String배열에 문자를 담는다.
String[] arr = input.split(" ");
String answer = "";
// 가장 작은 값으로 초기화
int m = Integer.MIN_VALUE;
for (String x : arr) {
// 문자열의 길이 저장
int len = x.length();
// m보다 크면 m에 문자열길이 저장, answer에 문자열 저장.
if(len>m){
m=len;
answer=x;
}
}
// 가장 긴 문자열을 출력
System.out.println(answer);
}
}
다른 풀이 ( indexOf )
728x90
'알고리즘 > JAVA' 카테고리의 다른 글
[JAVA] 6. 중복문자 제거 (0) | 2021.04.14 |
---|---|
[JAVA] 5. 특정 문자 뒤집기 (0) | 2021.04.14 |
[JAVA] 4. 단어 뒤집기 (0) | 2021.04.14 |
[JAVA] 2. 대소문자 변환 (1) | 2021.04.14 |
[JAVA] 1. 단어뒤집기 (0) | 2021.04.14 |