https://www.acmicpc.net/problem/10809
알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오.
<script>
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
int main()
{
char input[101];
int result[27];
scanf("%s", input);
for (int i = 0; i < 26; i++) {
result[i] = -1;
// result 배열의 모든 값을 -1로 초기화 시킨다.
}
for (int i = 97; i <= 122; i++) {
for (int j = 0; j < strlen(input); j++) {
if (input[j] == i) {
result[input[j] - 'a'] = j;
break;
// input[j]가 97('a')라면 result[97 - 'a'(97)] : result[0] = j(a가 나온 위치)
}
}
}
for (int i = 0; i < 26; i++) {
printf("%d ", result[i]);
}
return 0;
}
</script>