[백준/C언어] 11656: 접미사 배열
1584 단어 BaekJoon 알고리즘 기초BaekJoon 알고리즘 기초
문제 출처 :
https://www.acmicpc.net/problem/11656
코드
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#pragma warning(disable:4996)
int main(void) {
char str1[1001]={ 0, };
char str2[1001][1001] = { 0, };
char temp[1001] = { 0, };
scanf("%s", str1);
int len = strlen(str1);
for (int i = 0; i < len; i++) {
for (int j = 0; j < len; j++) {
str2[i][j-i] = str1[j];
}
}
for (int i = 0; i < len - 1; i++) {
for (int j = i; j < len - 1 - i; j++) {
// str2[j] 가 str2[j+1] 보다 알파벳 순으로 뒤쪽이다.
if (strcmp(str2[j], str2[j + 1]) > 0) {
strcpy(temp, str2[j]);
strcpy(str2[j], str2[j + 1]);
strcpy(str2[j + 1], temp);
}
}
}
for (int i = 0; i < len; i++) {
printf("%s\n", str2[i]);
}
return 0;
}
풀이
str2를 버블정렬과 strcmp,strcpy 문자열 함수를 사용하여 알파벳 순으로 정렬할 수 있었다.
느낀 점
간단한 문자열 함수 strcmp, strcpy를 까먹고 있었는데 다시 공부하는 기회였다.
Author And Source
이 문제에 관하여([백준/C언어] 11656: 접미사 배열), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@osdsoonhyun/백준C언어-11656-접미사-배열저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)