개발로그필름
[백준] C | 10809 | 알파벳 찾기 본문
728x90
반응형
SMALL
https://www.acmicpc.net/problem/10809
알파벳의 인덱스를 어떻게 저장해야하는지 고민했다
알파벳의 아스키 코드를 아는 것이 이 문제의 핵심 포인트 같다
a의 아스키 코드는 97이라는 것을 알아두면 좋을 꺼 같다
코드 풀이
#include <stdio.h>
int main()
{
char str[101] = {NULL};
int alphabet[26];
scanf("%s", &str);
// alphabet 배열 안을 모두 -1로 초기화
for (int i = 0; i < 26; i++)
alphabet[i] = -1;
// a부터 z까지 돌면서
for (int i = 'a'; i <= 'z'; i++)
{
// 단어의 길이가 100을 넘지 않으므로 100번 돌면서
for (int j = 0; j < 100; j++)
{
// 단어 글자와 a~z중 하나와 같으면
if (str[j] == i)
{
// 같은 알파벳에서 아스키코드 a의 숫자인 97을 뺀 차이값에
// 해당 인덱스를 저장한다.
alphabet[i - 97] = j;
break;
}
}
}
for (int i = 0; i < 26; i++)
{
printf("%d ", alphabet[i]);
}
printf("\n");
return 0;
}
반응형
LIST
'coding test > 백준' 카테고리의 다른 글
[백준] C | 4673 | 셀프 넘버 (0) | 2022.11.18 |
---|---|
[백준] C | 1065 | 한수 (0) | 2022.11.17 |
[백준] C | 1157 | 단어 공부 (0) | 2022.11.15 |
[백준] C | 1152 | 단어의 개수 (0) | 2022.11.14 |
[백준] C | 1316 | 그룹 단어 체커 (0) | 2022.11.13 |
Comments