본문 바로가기

Backjoon

[백준 1316] 그룹단어체커

반응형

[백준 1316] 그룹단어체커


[출처 :백준]


문제접근방법
먼저 문자열의 연속이 끝난 상황에서 또 다시 해당 문자가 발견되면 그룹단어가 될 수 없다. 이를 체크하기 위해 이미 나왔던 단어를 저장하는 링크드 리스트를 만들어 이 리스트에 값이 있는지 없는지를 체크했다.


소스코드 (JAVA)

import java.util.LinkedList;
import java.util.Scanner;
public class Solution {
       static int N = 0;
       static int K = 0;
       public static void main(String[] args) {
              Scanner sc = new Scanner(System.in);
              // 입력 N 받기
              int cnt = 0;
              N = Integer.parseInt(sc.nextLine());
              for (int i = 0; i < N; i++) {
                     boolean isGrp = true;
                     String line = sc.nextLine();
                     LinkedList<Character> l = new LinkedList<Character>();
                     for (int j = 0; j < line.length() - 1; j++) {
                           if (l.contains(line.charAt(j)))
                                  isGrp = false;
                           if (line.charAt(j) != line.charAt(j + 1)) {
                                  l.add(line.charAt(j));
                           }
                     }
                     if (l.contains(line.charAt(line.length() - 1))) {
                           isGrp = false;
                     }
                     
                     if(isGrp)
                           cnt++;
              }
              System.out.println(cnt);
       }
}


반응형