[백준] 1316번: 그룹 단어 체커

앙이🐯·2022년 2월 20일
0

알고리즘

목록 보기
13/22

백준 1316번: 그룹 단어 체커

1. 문제 설명

2. 문제 풀이

  1. 단어의 갯수를 입력받는다.
  2. 문자열로 단어를 입력받는다.
  3. 단어를 이루고 있는 알파벳을 검사해준다.
  • charAt(): String으로 저장된 문자열에서 한 글자만 선택해서 char타입으로 변환해준다.
    //사용법: charAt('문자번호')
    String str= new String("abc");
    char c = str.charAt(0); //abc에서 0번째 위치의 단어 -> a 
  • boolean 배열 초기값: false
코드

import java.util.*;

public class No_1316 {

	public static void main(String[] args) {
		
		Scanner sc=new Scanner(System.in);
		
		int N=sc.nextInt();

		int count=N;
		
		for(int i=0;i<N;i++) {

			String str= sc.next();
           //알파벳(a~z)을 체크하는 배열로 체크한 알파벳은 true로 값 변경
			boolean[] check=new boolean[26]; 
			
           //단어의 j번째 알파벳과 j+1번째 알파벳 비교
			for(int j=0;j<str.length()-1;j++) {
 				//j와 j+1이 다를때
				if(str.charAt(j)!=str.charAt(j+1)) {
 				//이미 true로 체크되어 있는 알파벳일때 그룹 단어X
					if(check[str.charAt(j+1)-'a']==true) {
						count--;
						break;
					}
				}
 				//체크한 알파벳 true로 변경해줌
				check[str.charAt(j)-'a']=true;
			}
		}
		System.out.println(count);
	}

}

실행 결과

0개의 댓글