https://www.acmicpc.net/problem/10809
Baekjoon 10809번 문제는 주어진 문자열에서 각 알파벳이 처음 등장하는 위치를 구하는 문제
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String input = sc.nextLine();
// 각 알파벳의 등장 위치를 저장할 배열 초기화
int[] positions = new int[26];
for (int i = 0; i < 26; i++) {
positions[i] = -1;
}
// 입력 문자열을 순회하며 첫 등장 위치 기록
for (int i = 0; i < input.length(); i++) {
char c = input.charAt(i);
if (positions[c - 'a'] == -1) { // 처음 등장한 경우에만 기록
positions[c - 'a'] = i;
}
}
// 결과 출력
for (int i = 0; i < 26; i++) {
System.out.print(positions[i] + " ");
}
}
}
문자열을 카운팅 하고 싶을 때 문자- '0'을 하면 아스키코드값으로 정수형을 받아올 수 있다는 것 꼭 기억하자!
'a' = 97
'A' = 65
'0' = 48
기본으로 기억해두고 자신있게 사용하자!
'Baekjoon' 카테고리의 다른 글
[JAVA] 2798번 블랙잭 🤎2 : 나의 첫 무서운 브루트포스 알고리즘 풀이 (2) | 2024.11.13 |
---|---|
[JAVA] 백준 1978번 소수찾기 🤎2 : 소수의 약수 범위에 대한 매우 중요한 생각! (0) | 2024.11.11 |
[JAVA]백준 3052번 🤎2 : (나의 첫 Set 자료구조를 이용한 백준 문제!) (0) | 2024.11.07 |
[JAVA]백준 2903번 중앙 이동 알고리즘 🤎3 : 풀이 규칙을 잘 찾자! (0) | 2024.11.07 |
[JAVA]백준 2530 : 인공지능 시계🤎4 : 시분초를 잘 활용해야 하는 문제 (1) | 2024.10.20 |