반응형

앞에서 공부했던 알파벳 개수와 거의 동일한 문제인데, 배열 n_list에 빈도 수를 저장하는 게 아니라 문자열에서 처음으로 등장할 때의 인덱스를 저장하면 된다. 그 외엔 알파벳 개수와 동일함!
import java.io.*;
public class FindAlphabet_10809 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
// 알파벳 별로 첫 인덱스를 담을 배열 생성
int[] n_list = new int[(int)'z' - (int)'a' + 1];
for (int i=0; i<n_list.length; i++) {
n_list[i] = -1; // 존재하지 않는다면 -1을 담는다
}
String S = br.readLine();
for (int i=0; i<S.length(); i++) {
char c = S.charAt(i);
int c_num = (int)c - (int)'a';
if (n_list[c_num] == -1) { // 첫 인덱스가 배열에 담기지 않은 알파벳이라면
n_list[c_num] = i; // 배열에 첫 인덱스를 담는다
}
}
for (int i=0; i<n_list.length; i++) {
sb.append(Integer.toString(n_list[i]));
sb.append(" ");
}
System.out.print(sb);
}
}
로그인
www.acmicpc.net
작성일자: 2023-09-05
'컴퓨터 공학 > 백준' 카테고리의 다른 글
[백준] JAVA 자바 : ROT13 (11655번) (0) | 2024.01.20 |
---|---|
[백준] JAVA 자바 : 문자열 분석 (10820번) (0) | 2024.01.20 |
[백준] JAVA 자바 : 알파벳 개수 (10808번) (0) | 2024.01.20 |
[백준] JAVA 자바 : 후위 표기식 (1918번) (0) | 2024.01.20 |
[백준] JAVA 자바 : 후위 표기식2 (1935번) (0) | 2024.01.20 |