문자열 myString과 pat가 주어집니다. myString의 부분 문자열중 pat로 끝나는 가장 긴 부분 문자열을 찾아서 return 하는 solution 함수를 완성해 주세요.
ArrayList 객체에 myString의 부분 문자열들을 담는다. 그다음, pat을 포함하는 길이가 가장 긴 문자열을 찾기 위해 루프를 거꾸로 돌면서 endsWith()로 해당 문자열을 찾아준다.
단, pat의 길이가 1일 때는 break;를 활용해 for문을 바로 빠져 나와야한다는 점이다.
import java.util.ArrayList;
class Solution {
public String solution( String myString, String pat ) {
ArrayList<String> list = new ArrayList<>();
String answer = "";
for (int i=0;i<myString.length();i++) {
list.add(myString.substring(0,i + 1));
}
for(int i=list.size()-1;i>=0;i--){
if(list.get(i).endsWith(pat)){
answer = list.get(i);
if(pat.length() == 1) break;
}
}
return answer;
}
}
