
풀이
알파벳 위치값을 저장할 배열을 선언하고 반복문을 돌며 인덱스를 체크하는 방법을 고려해봤으나, C++ 에는 `find`라는 훌륭한 STL이 있으므로... 사용했더니 배열을 사용한 코드보다 훨씬 간결한 코드로 문제를 해결할 수 있었다.
#include <bits/stdc++.h>
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
string s;
cin >> s;
for (char i = 'a'; i <= 'z'; i++) {
cout << (int)s.find(i) << " ";
}
return 0;
}
`s.find(i)` 이 문자열에서 문자가 처음 등장하는 인덱스(위치)를 반환하는 부분이다.
이를 활용하면 문자열 s를 받아서 a~z 까지 모든 알파벳을 순회하며 `find`를 통해 쉽게 문자열이 처음 등장하는 인덱스를 반환할 수 있었다.
'Memo > PS' 카테고리의 다른 글
| [백준] 1919 애너그램 만들기 (0) | 2025.12.21 |
|---|---|
| [백준] 11328 Strfry (0) | 2025.12.19 |
| [백준] 10807 개수 세기 (0) | 2025.12.18 |
| [백준] 2444 별찍기 - 7 (0) | 2025.12.13 |
| [백준] 1152 단어의 개수 (0) | 2025.12.11 |