본문 바로가기
Problem Solving

[프로그래머스] L2 영어 끝말잇기

by JYHAN 2020. 12. 15.

[프로그래머스] L2 영어 끝말잇기

[풀이]

두 가지 조건에 유의하여 구현한다.

1. 앞 단어의 마지막 글자와 뒷 단어의 첫 글자가 같은지 여부(구현)

2. 이전에 나온 단어인지(HashSet 사용)

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import java.util.*;
class Solution {
    public int[] solution(int n, String[] words) {
        int[] answer = new int[] {0,0};
        Set<String> set = new HashSet<String>();
        set.add(words[0]);
        for(int i=1; i<words.length; i++){
            char prev = words[i-1].charAt(words[i-1].length()-1);
            char next = words[i].charAt(0);
            if((prev!=next) || set.contains(words[i])){
                answer[0= i%n+1;
                answer[1= i/n+1;
                break;
            }
            set.add(words[i]);
        }
        return answer;
    }
}
cs

댓글