[백준/BOJ] 백준 10809번 : 알파벳 찾기
2020. 9. 15. 20:18ㆍ알고리즘 문제풀이
10809번: 알파벳 찾기
각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출
www.acmicpc.net
vector<int> result(26, -1); 로 하여 모든 알파벳이 포함되어있지 않다고 초기화한 뒤, if (result[s[i] - 'a'] == -1) 일 때 처음 등장한 알파벳이라고 판단해 그 위치를 저장한다.
코드
#include <iostream>
#include <algorithm>
#include <string>
#include <vector>
using namespace std;
int main()
{
cin.tie(NULL);
ios_base::sync_with_stdio(false);
string s;
vector<int> result(26, -1); //모든 알파벳이 포함되어있지 않다고 초기화
cin >> s;
for (int i = 0; i < s.size(); i++)
{
if (result[s[i] - 'a'] == -1) //처음 등장한 알파벳일때
result[s[i] - 'a'] = i;
}
for (int i = 0; i < result.size(); i++)
cout << result[i] << " ";
return 0;
}
'알고리즘 문제풀이' 카테고리의 다른 글
[백준/BOJ] 백준 2908번 : 상수 (0) | 2020.09.15 |
---|---|
[백준/BOJ] 백준 2675번 : 문자열 반복 (0) | 2020.09.15 |
[백준/BOJ] 백준 4153번 : 직각삼각형 (0) | 2020.09.15 |
[백준/BOJ] 백준 10992번 : 별 찍기 - 17 (0) | 2020.09.15 |
[백준/BOJ] 백준 15683번 : 감시 (0) | 2020.09.08 |