1. 문제 번호 10809번
2. 문제 풀이
- 핵심은 ASCII 코드를 활용하는 것
A = 65, a = 97
- Arrays.fill( int [] a , int val )
public static void fill(int[] a, int val)
- Char Convert to int
- Character.getNumericValue
- String Convert to Char
- String.charAt(index)
- Char Convert to String
- String.valueOf(char)
나의 문제풀이 방식 및 순서
방법 1.
1. 배열 26개에 초기 값 -1 을 초기화
2. 입력 값 backjoon에 각각 97을 나눠 ASCII코드 값을 추출
3. 그것을 배열 index로 값 삽입
방법 2.
1. 배열 값 A~Z까지 다 만든다.
2. 배열 값 -1로 26개 초기 세팅
3. 입력값 backjoon과 배열 값 A~Z까지 차례로 비교하여 같으면 2.의 배열에 추가
3. 소스 인증
import java.util.*;
import java.lang.*;
import java.io.*;
// The main method must be in a class named "Main".
class Main {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String inputLine = br.readLine();
int [] alphabetIndex = new int[26];
Arrays.fill(alphabetIndex,-1);
for(int i = 0; i < inputLine.length(); i++){
int temp = ((int) inputLine.charAt(i)) % 97;
if(alphabetIndex[temp] == -1){
alphabetIndex[temp] = i;
}
}
for (int i : alphabetIndex){
System.out.print(i + " ");
}
br.close();
}
}
import java.util.*;
import java.lang.*;
import java.io.*;
// The main method must be in a class named "Main".
class Main {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String inputLine = br.readLine();
char[] alphabet = new char[26];
int [] alphabetIndex = new int[26];
Arrays.fill(alphabetIndex, -1);
for (int i = 0; i < 26; i++){
alphabet[i] = (char) (i + 97);
}
for (int i = 0; i < inputLine.length(); i++){
for (int j = 0; j < alphabet.length; j++){
if(inputLine.charAt(i)==alphabet[j]){
alphabetIndex[j] = (alphabetIndex[j] == -1) ? i : alphabetIndex[j];
}
}
}
for (int i:alphabetIndex){
System.out.print(i + " ");
}
br.close();
}
}
- 실패 소스코드 -
4. 추가 개념
5. 참조 블로그
불편함을 느끼실 경우 연락 주시면 곧 바로 삭제하도록 하겠습니다.
'알고리즘(BOJ) 문제풀이' 카테고리의 다른 글
[BOJ/백준] 문자열_1152번 (0) | 2024.05.16 |
---|---|
[BOJ/백준] 문자열_2675번 (0) | 2024.05.15 |
[BOJ/백준] 문자열_11720번 (0) | 2024.05.15 |
[BOJ/백준] 문자열_11654번 (0) | 2024.05.15 |
[BOJ/백준] 문자열_9086번 (0) | 2024.05.15 |