Coding Test/BaekJoon

[BaekJoon Java] 알파벳 찾기(10809)

momong'-' 2021. 7. 29. 13:17

https://www.acmicpc.net/problem/10809

 

10809번: 알파벳 찾기

각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출

www.acmicpc.net


  • 문제

알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오.

  • 예제 입출력

  • 풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/**
 * 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오.
 * @author imj10
 *
 */
public class Alphabet_10809 {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		String s = br.readLine();
		int[] result = new int[26];
		for ( int i = 0; i <result.length; i++ ) {
			result[i] = -1;
		}
		
		for ( int i = 0; i <s.length(); i++ ) {
			int index = s.charAt(i) - 'a';
			
			if ( result[index] == -1 ) {
				result[index] = i;
			}
		}
		
		for ( int one : result ) {
			System.out.print(one + " ");
		}
	}
}

 

  • 결과


  • 추가설명

흠... 풀긴 풀었는데 코드가 마음에 안든다.....더워서 그런가 아무생각도 나지 않는다...

나중에 코드 수정해서 다시 테스트 해봐야지.......

날씨가 너무 더워...~~~~