백준 1316 그룹 단어 체커 (Java,자바)

jonghyukLee·2022년 4월 5일
0

이번에 풀어본 문제는
백준 1316번 그룹 단어 체커 입니다.

📕 문제 링크

❗️코드

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

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int N = Integer.parseInt(br.readLine());

        int cnt = 0;

        loop : for(int i = 0; i < N; i++)
        {
            char[] input = br.readLine().toCharArray();

            boolean [] visited = new boolean[26];
            int before = 26;
            for(char next : input)
            {
                int cur = next - 97;
                if(before == cur) continue;
                if(visited[cur]) continue loop;
                visited[cur] = true;
                before = cur;
            }
            cnt++;
        }
        System.out.print(cnt);
    }
}

📝 풀이

입력된 N개의 문자열 중 그룹단어의 개수를 출력하는 문제입니다. 동일한 문자가 연속되지 않은 상태로 존재한다면 해당 문자열은 그룹단어가 아닙니다.
방문배열을 통해 이전에 등장했던 문자인지 여부를 담아두고, 문자열을 순차적으로 탐색해주면 해결할 수 있습니다.

📜 후기

오랜만에 문자열 문제 풀어보았습니다^^

profile
머무르지 않기!

0개의 댓글