[백준] 10809번 문제 - 알파벳 찾기 - C언어(C11 C99)
2023. 11. 3. 16:49ㆍ프로그래밍/C
이 문제를 보았을 때 알파벳 위치에다 -1을 다 넣은뒤
입력한 알파벳과 비교하여 그 위치에 순서를 -1 대신 넣으려고 했다.
따라서 다음과 같은 코드가 짜여졌다.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
char x;
int y;
}eng;
int main() {
int i,j;
int n = 97;
char string[100] = {0,};
scanf("%s",&string); // 97 - 122
int len = strlen(string);
eng arr[26];
for (i = 0; i < 26; i++) {
arr[i].x = n;
arr[i].y = -1;
n++;
}
for (i = 0; i < len; i++) {
for (j = 0; j < 26; j++) {
if (string[i] == arr[j].x && arr[j].y == -1 ) {
arr[j].y = i;
}
}
}
for (i = 0; i < 26; i++) {
printf("%d ", arr[i].y);
}
return 0;
}
하지만 다른사람들이 짠 코드를 보니 어처구니가 없었다.
https://kiffblog.tistory.com/120 다음 블로그있는 코드를 가져왔다
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void)
{
char word[100] = { 0 };
scanf("%s", word);
for (int i = 97; i <= 122; i++) {
int j = 0;
while (word[j] != 0) {
if (word[j] == (char)i) break;
j++;
}
if (word[j] == (char)i) printf("%d ", j);
else printf("-1 ");
}
}
이렇게 간단하게 짤 수 있다.
난 진짜 바보다.
'프로그래밍 > C' 카테고리의 다른 글
[혼공C]_파일 개방과 입출력_ 18-7_a+ 모드로 파일의 내용을 확인하며 출력 (1) | 2023.12.04 |
---|---|
[백준] 1316번 문제 - 그룹 단어 체커 - C언어(C11 C99) (0) | 2023.11.08 |
[백준] 2798번 문제 - 블랙잭 - C언어(C11 C99) (0) | 2023.11.03 |
[백준] 11650번 문제 - 좌표 정렬하기 - C언어(C11 C99)/동적메모리할당 + 내부정렬함수 + 구조체활용 (0) | 2023.11.01 |
[백준] 2751번 문제 - 수 정렬 하기 2 - C언어(C11 C99)/내장정렬함수qsort() (1) | 2023.10.31 |