문제

풀이

public int[] solution(int n, String[] words) {
    Set<String> called = new HashSet<>();
    char prevLast = ' ';

    for (int i = 0; i < words.length; i++) {
        if ((i != 0 && !words[i].startsWith(String.valueOf(prevLast)))
                || called.contains(words[i]) || words[i].length() == 1) {
            return new int[]{(i % n) + 1, (i / n) + 1};
        } else {
            called.add(words[i]);
            prevLast = words[i].charAt(words[i].length() - 1);
        }
    }
    return new int[]{0, 0};
}
  1. 문제의 조건 판별
  2. 문제의 조건에 따라 탈락하는 경우가 발생했을 때