728x90
알파벳들 26개를 전부 받아줘야하기때문에
boolean 배열을 선언합니다.
단어의 개수 N을 받고
N번 for문을 돌려서
word를 분석해줍니다.
알파벳이 연속되는 경우와, 이미 나왔던 알파벳이 재등장할 경우를 처리해줍니다.
사용한 boolean 배열은 false로 세탁해줍니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int gw_num = 0; boolean[] gw_tf = new boolean[26]; String word; int pre_idx; int i,j; for(i=0;i<N;i++) { word = sc.next(); pre_idx=-1; for(j=0;j<word.length();j++) { if(pre_idx == word.charAt(j)-'a') continue; else if(!gw_tf[word.charAt(j)-'a']) gw_tf[word.charAt(j)-'a']=true; else break; pre_idx = word.charAt(j)-'a'; } Arrays.fill(gw_tf,false); if(j==word.length()) gw_num++; } System.out.println(gw_num); } } |
'알고리즘 풀이 > 백준' 카테고리의 다른 글
[백준][Java] 5622번 다이얼 (0) | 2018.04.20 |
---|---|
[백준][Java] 2908번 상수 (0) | 2018.04.20 |
[백준][Java] 1157번 단어 공부 (0) | 2018.04.20 |
[백준][Java] 2675번 문자열 반복 (0) | 2018.04.20 |
[백준][Java] 10809번 알파벳 찾기 (0) | 2018.04.19 |