문제 설명
문자열 myString과 pat가 주어집니다. myString의 부분 문자열중 pat로 끝나는 가장 긴 부분 문자열을 찾아서 return 하는 solution 함수를 완성해 주세요.
제한사항
5 ≤ myString ≤ 20 1 ≤ pat ≤ 5 pat은 반드시 myString의 부분 문자열로 주어집니다. myString과 pat에 등장하는 알파벳은 대문자와 소문자를 구분합니다.
나의 코드
class Solution {
public String solution(String myString, String pat) {
int temp = myString.lastIndexOf(pat);
String answer = myString.substring(0, temp+pat.length());
return answer;
}
}
느낀 점
어제 문제를 풀다가 indexOf()
메서드에 관해 공부했을 때, 어렴풋이 lastIndexOf()
메소드도 봤었는데 이번 문제를 만나면서 뭔가 그 메소드를 사용해야할 것 같았다. lastIndexOf()
로 원하는 문자열 pat
이 마지막으로 나올 때 전까지의 위치를 찾고, 거기다 pat
의 길이를 더한 것을 substring()
메소드를 활용하여 찾아냈다! 지나치듯 공부한 걸 써먹어서 헤매지 않고 비교적 간편하게 풀 수 있었던 것 같다 :) 역시 개발자는 항상 공부해야한다...!!