주소 : https://www.acmicpc.net/problem/10809
10809번: 알파벳 찾기
각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출
www.acmicpc.net
소스 :
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
int main()
{
char s[101];
int sol[26] = {0,};
for (int i = 0;i < 26;i++)
sol[i] = -1;
scanf("%s", s);
for (int i = 0;i < strlen(s);i++)
{
for (int j = 0;j < strlen(s);j++)
for (int k =j+1;k < strlen(s);k++)
if (s[j] == s[k])
s[k] = '{';
for (char j = 'a';j <= 'z';j++)
{
if (s[i] == j)
sol[j - 97] = i;
}
}
for (int i = 0;i < 26;i++)
printf("%d ", sol[i]);
return 0;
}
마무리 : 이 문제를 처음 봤을 때 if문을 사용하여 알파벳을 나열해야되나 생각했지만 그러기에는 소스 코드가 길어질 것 같아서 다른 방법을 생각해봤지만 떠오르지 않아 구글링을 해본 결과 어렵지 않게 문자와 반복문을 사용하여 알파벳을 찾을 수 있는 문제이다.
'백준 > C' 카테고리의 다른 글
백준 10871번 : X보다 작은 수 [C] (0) | 2022.07.13 |
---|---|
백준 10869번 : 사칙연산 [C] (0) | 2022.07.13 |
백준 10172번 : 개 [C] (0) | 2022.07.10 |
백준 10171번 : 고양이 [C] (0) | 2022.07.10 |
백준 9498번 : 시험 성적 [C] (0) | 2022.07.09 |