백준 10809 번 : 알파벳 찾기
https://www.acmicpc.net/problem/10809

#include <iostream>
#include <string>
using namespace std;
int main()
{
string s;
int where[26];
cin >> s;
for (int i = 0; i < 26; i++)
{
where[i] = -1;
}
for (int j = 97; j < 123; j++) //a부터~
{
for (int i = 0; i < s.length(); i++) //s의 i번째 글자에서~
{
if (s[i] == j)
{
where[j - 'a'] = i;
break;
}
}
}
for (int i = 0; i < 26; i++)
{
cout << where[i] << " ";
}
return 0;
}
처음에는 break를 안 넣어서 틀리고,
다음에는 i와 j를 반대 순서로 실행해서 같은 문자가 여러 번 나올 때 문제가 생겼다.
string 헤더를 include 해놓고 제대로 쓰지 않았는데, string 헤더를 사용하면 훨씬 짧게 끝낼 수 있었을 것 같다. 나중에 다시 해봐야겠다.
'백준' 카테고리의 다른 글
[백준] 7568번: 덩치 (C++) (0) | 2022.03.19 |
---|---|
[백준] 10870번: 피보나치 수 5 (C++) (0) | 2022.02.22 |
[백준] 10872번: 팩토리얼 (C++) (0) | 2022.02.22 |
[백준] 2675번: 문자열 반복 (C++) (0) | 2022.01.14 |
[백준] 10951번: A+B - 4 (C++) (0) | 2021.12.30 |