[프로그래머스] 영어 끝말잇기(Lv.2)

MIIN·2023년 2월 16일
0

알고리즘

목록 보기
1/1
import java.util.ArrayList;
import java.util.List;

public class Shiritori {
    public int[] solution(int n, String[] words) {

        /**
         * 가장 먼저 탈락하는 사람의 번호와 몇 번째 차례에 탈락하는지 return
         */

        int[] answer = new int[2];

        List<String> arr = new ArrayList<>();
        answer[0] = 0;
        answer[1] = 0;

        arr.add(words[0]);

        for(int i = 1; i < words.length; i++) {

            String now = words[i];
            String previous = words[i - 1];

            if(arr.contains(now) || now.charAt(0) != previous.charAt(previous.length() - 1)) {
                answer[0] = (i % n) + 1;
                answer[1] = (i / n) + 1;
            }

            arr.add(now);
        }
        return answer;
    }
}

실패.. ㅇㅅㅇ

import java.util.ArrayList;
import java.util.List;

public class Shiritori {
    public int[] solution(int n, String[] words) {

        /**
         * 가장 먼저 탈락하는 사람의 번호와 몇 번째 차례에 탈락하는지 return
         */

        int[] answer = new int[2];

        List<String> arr = new ArrayList<>();
        answer[0] = 0;
        answer[1] = 0;

        arr.add(words[0]);

        for(int i = 1; i < words.length; i++) {

            String now = words[i];
            String previous = words[i - 1];

            if(arr.contains(now) || now.charAt(0) != previous.charAt(previous.length() - 1)) {
                answer[0] = (i % n) + 1;
                answer[1] = (i / n) + 1;
                break;
            }

            arr.add(now);
        }
        return answer;
    }
}

마지막에 break; 넣어주니까 통과

0개의 댓글