S E P H ' S

[코딩풀이] - BAEKJOON.1316 그룹단어체커_JAVA 본문

카테고리 없음

[코딩풀이] - BAEKJOON.1316 그룹단어체커_JAVA

yoseph0310 2021. 2. 18. 00:17


풀이방법

1. 알파벳 개수 만큼 길이의 boolean타입 배열 생성

2. 입력받은 문자열을 현재, 이전과 나누어 비교

3. 현재, 이전 문자가 같다면 반복문 진행

4. 같지 않다면 현재의 문자가 이전에도 사용됐는지 boolean타입 배열로 확인

package BJ_문자열;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class BJ_1316_그룹단어체커 {
	
	static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
	
	public static void main(String[] args) throws Exception {
		
		int cnt = 0;
		int N = Integer.parseInt(br.readLine());
		
		for (int i = 0; i < N; i++) {
			if ( check()) {
				cnt++;
			}
		}
		
		System.out.println(cnt);
	}
	
	public static boolean check() throws Exception{
		boolean[] check = new boolean[26];
		int prev = 0;
		String str = br.readLine();
		
		for (int i = 0; i < str.length(); i++) {
			int now = str.charAt(i);
			
			if ( prev != now) {
				
				if ( check[now - 'a'] == false) {
					check[now - 'a'] = true;
					prev = now;
				}
				else {
					return false;
				}
			}
			
			else {
				continue;
			}
			
		}
		return true;
	}
}