[백준 알고리즘] 1316번 그룹 단어 체커(Python 3, Java)언어, 알고리즘 공부/백준2020. 2. 12. 17:41
Table of Contents
<Python 3>
n = int(input())
result = 0
for i in range(n):
line = input()
a = {} # 빈 딕셔너리 생성
count = 0
for j in range(len(line)):
if line[j] in a and a[line[j]] == (j-1): #문자가 연속해서 나타날 경우
a[line[j]] = j
elif line[j] in a and a[line[j]] != (j-1): #문자가 연속하지 않을 경우
break
else: #문자가 딕셔너리에 없는 경우 딕셔너리에 추가
a[line[j]] = j
count += 1
if count == len(line):
result += 1
print(result)
<Java>
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
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 count = 0;
for(int i=0; i<n; i++){
int[] alpha = new int[26];
Arrays.fill(alpha, -1);
boolean check = true;
String word = br.readLine();
for(int j=0; j<word.length(); j++){
int idx = word.charAt(j)-'a';
if(alpha[idx] == -1 || alpha[idx] == (j-1))
alpha[idx] = j;
else{
check = false;
break;
}
}
if(check)
count++;
}
System.out.println(count);
}
}
▼링크
https://www.acmicpc.net/problem/1316
반응형
'언어, 알고리즘 공부 > 백준' 카테고리의 다른 글
[백준 알고리즘] 2292번 벌집 (Python) (0) | 2020.03.01 |
---|---|
[백준 알고리즘] 1712번 손익분기점 (Python) (0) | 2020.03.01 |
[백준 알고리즘] 2941번 크로아티아 알파벳(Python 3, Java) (0) | 2020.02.12 |
[백준 알고리즘] 5622번 다이얼 (Python 3, Java) (0) | 2020.02.12 |
[백준 알고리즘] 2908번 상수(Python 3, Java) (0) | 2020.02.12 |
@쿠몬e :: ˚˛˚ * December☃ 。* 。˛˚
전공 공부 기록 📘
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!