split 이용
import java.io.*;
import java.util.*;
public class Main {
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 static void main(String[] args) throws IOException {
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str = kb.nextLine(); // 한 줄 입력 받기기
System.out.print(T.solution(str));
}
}
indexOf, substring 이용
import java.io.*;
import java.util.*;
public class Main {
public String solution(String str){
String answer = "";
int m = Integer.MIN_VALUE, pos;
while((pos = str.indexOf(' ')) != -1){ // 띄어쓰기를 발견 못하면 -1 리턴, 발견하면 인덱스 번호 리턴
String tmp = str.substring(0, pos); // 띄어쓰기 전까지의 string
int len = tmp.length();
if(len>m){
m = len;
answer = tmp;
}
str=str.substring(pos+1); // 그 다음 문자열부터 끝까지
}
if(str.length()>m) answer=str; // 마지막 단어 처리
return answer;
}
public static void main(String[] args) throws IOException {
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str = kb.nextLine(); // 한 줄 입력 받기기
System.out.print(T.solution(str));
}
}
'ALGORITHM' 카테고리의 다른 글
[JAVA] 알고리즘 : two pointers - 두 배열 합치기 (0) | 2022.06.20 |
---|---|
[JAVA] 알고리즘 : 문자열 - 단어 뒤집기 (0) | 2022.06.20 |
[JAVA] 알고리즘 : 문자열 - 대소문자 변환 (0) | 2022.06.20 |
[JAVA] 알고리즘 : 문자열 - 문자 찾기 (0) | 2022.06.20 |
[JAVA] 백준 1254번- 팰린드롬 만들기 (0) | 2022.06.19 |