프로그래머스 코딩테스트 연습문제 (영어 끝말잇기)
import java.util.*;
class Solution {
public int[] solution(int n, String[] words) {
int[] answer = {};
Stack<String> sta = new Stack<>();
sta.push(words[0]);
int count=1;
for(int i=1; i< words.length; i++){
if(i%n == 0) count++;
char[] ex1 = words[i-1].toCharArray();
char[] ex2 = words[i].toCharArray();
if(sta.contains(words[i])){
answer = new int[]{i%n+1,count};
return answer;
}
else if(ex1[ex1.length-1]!=ex2[0]){
answer = new int[]{i%n+1,count};
return answer;
}
else{
sta.push(words[i]);
}
}
answer = new int[]{0,0};
return answer;
}
}
/* String을 char로 변환
i-1번째의 마지막 스펠링과 i번째의 첫번째 스펠링이 같은지 확인
Stack에 words[i]값을 넣고 i가 증가함에따라 Stack에 words[i]가 없으면 Stack넣고 있으면 answer값 반환*/
댓글