본문으로 바로가기

🦛 문제 설명

문자열 myString과 pat가 주어집니다. myString의 부분 문자열중 pat로 끝나는 가장 긴 부분 문자열을 찾아서 return 하는 solution 함수를 완성해 주세요.

 

 

🦛 제한 사항

  • 5 ≤ myString ≤ 20
  • 1 ≤ pat ≤ 5
    • pat은 반드시 myString의 부분 문자열로 주어집니다.
  • myString과 pat에 등장하는 알파벳은 대문자와 소문자를 구분합니다.

 

🦛 입출력 예

 

🦛 입출력 예 설명

입출력 예 #1

  • "AbCdEFG"에서 "dE"는 한 번 등장하며 처음부터 해당 위치까지 잘라내면 "AbCdE"가 됩니다. 따라서 이 문자열이 "dE"로 끝나는 가장 긴 문자열이며, "AbCdE"를 return 합니다.

입출력 예 #2

  • "AAAAaaaa"에서 "a"는 총 네 번 등장하며 이 중 가장 마지막에 있는 위치까지 잘라내면 "AAAAaaaa"가 됩니다. 따라서 이 문자열이 "a"로 끝나는 가장 긴 문자열이며, "AAAAaaaa"를 return 합니다.

 

🦛 문제 풀이

class Solution {
    public String solution(String myString, String pat) {
        String answer = "";
        int chkIndex = 0;
        
        for(int i=0; i < myString.length()-pat.length()+1; i++) {
            String tmp = myString.substring(i, i+pat.length());
            if(tmp.equals(pat)) {
                chkIndex = i;
            }
        }
        
        for(int i=0; i < chkIndex+pat.length(); i++) {
            answer += myString.charAt(i);
        }
        
        return answer;
    }
}

 

'코딩테스트_문제풀이 > 프로그래머스' 카테고리의 다른 글

수열과 구간 쿼리 4  (0) 2023.12.12
간단한 식 계산하기  (0) 2023.12.12
중복된 문자 제거  (0) 2023.12.12
가장 가까운 같은 글자  (0) 2023.12.12
영어 끝말잇기  (0) 2023.12.12