[BOJ] 10809 JAVA

Organ·2023년 9월 13일
0

[문제 풀이]

목록 보기
34/123

알파벳 찾기

문제

내 풀이

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;


public class Main {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

		String S = br.readLine();
		boolean flag = false;

		for(int i = 'a'; i <= 'z'; i++)
		{
			for(int j = 0; j < S.length(); j++)
			{
				if(S.charAt(j) == i)
				{
					System.out.printf("%d ",j);				
					flag = true;
					break;
				}
			}
				if(!flag)
					System.out.print("-1 ");
				flag = false;

		}
	}
}

다른 풀이

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;


public class Main {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

		int[] arr = new int[26];

		for(int i = 0; i < arr.length; i++)
		{
			arr[i] = -1;						// 배열값을 -1로 초기화
		}

		String S = br.readLine();				// 문자열 입력 받기

		for(int i = 0; i < S.length(); i++)
		{
			char ch = S.charAt(i);

			if(arr[ch - 'a'] == -1)				// 첫번째로 나타난 위치하기 위함
			{
				arr[ch - 'a'] = i;
			}
		}

		for(int val : arr)
		{
			System.out.print(val + " ");
		}
	}
}

정리

다른 사람 풀이는 어떻게 생각해냈는지 궁금하다.

출처

https://st-lab.tistory.com/62

0개의 댓글