그룹 단어 체커 - 백준(1316, 문자열)
그룹 단어 체커
알고리즘[접근방법]
-
26개의 알파벳 사용 여부 체크 배열 선언(boolean type)
-
앞의 문자를 저장할 prev 변수 선언(int type)
-
문자열 길이만큼 반복문 돌면서 앞선 문자(prev)와 현재 문자(now)가 연속되는지 확인
- prev != now
- 현재 문자가(now) 중복된 문자이면 false 반환
- 현재 문자가(now) 중복된 문자가 아니면 현재 문자의 배열 값을 true로 변환 후 이전 문자(prev)에 현재 문자(now)대입
- prev != now
소스
package $01_문자열;
import java.util.Scanner;
public class $01_그룹_단어_체커_1316_실버5 {
public static boolean solution(String s) {
boolean status = true;
boolean[] alphabet = new boolean[26];
int prev = -1;
for(int i = 0 ; i < s.length() ; i++) {
int now = s.charAt(i) - 'a';
if(prev != now) {
if(alphabet[now]) {
status = false;
return status;
}else {
alphabet[now] = true;
}
}
prev = now;
}
return status;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int count = 0;
for(int i = 0 ; i < N ; i++) {
String s = sc.next();
if(solution(s)) {
System.out.println(s);
count++;
}
}
System.out.println(count);
sc.close();
}
}
결과
관련 지식
Author And Source
이 문제에 관하여(그룹 단어 체커 - 백준(1316, 문자열)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@thehill_hannam/그룹-단어-체커-백준1316-문자열저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)