반응형
반복문을 돌 때, 체크를 합니다.
1. 이전 단어의 마지막 글자와 현재 단어의 첫 글자가 일치하는지
2. 현재 단어가 hashset에 포함되어있는지 ( 중복검사 )
3. 단어의 길이가 1이하인지
확인하고 걸리는 부분이 있으면 for문을 빠져나가서 i%n+1 (누군지) i/n+1 (몇 회차인지)를 return 하고
모두 돌았을 경우엔 0, 0을 return 합니다.
import java.util.HashSet;
class Solution {
public int[] solution(int n, String[] words) {
HashSet<String> set = new HashSet<>();
int i;
char last_ch = words[0].charAt(0);
for (i = 0 ; i < words.length; i++) {
if (last_ch != words[i].charAt(0) || set.contains(words[i]) || words[i].length() <= 1)
break;
set.add(words[i]);
last_ch = words[i].charAt(words[i].length()-1);
}
if (i == words.length)
return new int[]{0, 0};
return new int[]{i%n+1, i/n+1};
}
}
반응형
'Algorithm' 카테고리의 다른 글
프로그래머스 코딩테스트 연습 Level4 - 우유와 요거트가 담긴 장바구니 [ Mysql ] (0) | 2021.04.23 |
---|---|
프로그래머스 코딩테스트 연습 Level2 - 점프와 순간 이동 [ Java ] (0) | 2021.04.21 |
프로그래머스 코딩테스트 연습 Level1 - 소수 만들기 [ Java ] (0) | 2021.04.20 |
프로그래머스 코딩테스트 연습 Level1 - 예산 [ Java ] (0) | 2021.04.20 |
프로그래머스 코딩테스트 연습 Level2 - 방문길이 [ Java ] (0) | 2021.04.20 |