문제: https://school.programmers.co.kr/learn/courses/30/lessons/12981
import java.util.*;
class Solution {
public int[] solution(int n, String[] words) {
int[] people = new int[n];
int[] answer = new int[2];
int len = words.length;
Set<String> set = new HashSet<>(); // 중복 체크용 set
for (int i = 0; i < len; i++) {
int group = i % n; // 몇 번째 사람인지 체크
String word1 = words[i]; // 기준 단어
// 첫 단어가 아니면 끝말잇기 규칙 확인
if (i > 0) {
String word2 = words[i - 1];
if (word1.charAt(0) != word2.charAt(word2.length() - 1)) {
answer[0] = group + 1; // 몇 번째 사람
answer[1] = people[group] + 1; // 몇 번째 차례
break;
}
}
boolean check = set.add(word1);
// 중복 단어 확인
if (!check) {
answer[0] = group + 1; // 몇 번째 사람
answer[1] = people[group] + 1; // 몇 번째 차례
break;
}
// 확인된 차례
people[group]++;
}
return answer;
}
}
ArrayIndexOutOfBoundsException
이 발생했다. ⇒ 이런 두가지 인덱스를 처리할때는 범위를 정말 신경써야할거같다.