컴퓨터기본/문제풀이

[백준] 10809번: 알파벳 찾기

차가운오미자 2021. 9. 6. 20:31

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

 

10809번: 알파벳 찾기

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

www.acmicpc.net

alp 이라는 각 알파벳에 대응하는 배열을 만들어두고, 이걸 looking table처럼 사용한다. 

#include <iostream>
#include <string>

using namespace std;

int alp[26] = {-1, -1, -1, -1, -1, \
          -1, -1, -1, -1, -1, \
          -1, -1, -1, -1, -1, \
          -1, -1, -1, -1, -1, \
          -1, -1, -1, -1, -1, -1};

int main(void){
	
	string s;
	cin >> s;
	
	for(int i = 0; i<s.length(); i++){
		if(alp[s[i]-'a'] == -1){
			alp[s[i]-'a'] = i;
		}
	}
	
	for(int i = 0; i<26; i++){
		cout << alp[i] << " ";
	}
	
	return 0;
}

'컴퓨터기본 > 문제풀이' 카테고리의 다른 글

[백준] 2447번: 별 찍기 - 10  (0) 2021.09.10
[백준] 1427번: 소트인사이드  (0) 2021.09.06
[백준] 11654: 아스키 코드  (0) 2021.09.06
[백준] 2108: 통계학  (0) 2021.09.06
[정올] 1495 : 대각선 지그재그  (0) 2021.09.03