[Xâu Ký Tự Cơ Bản]. Bài 20. Các từ thuận nghịch

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Nguồn bài:
28Tech
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho xâu kí tự S gồm các từ được phân cách nhau bởi một vài dấu cách.

Hãy tách ra các từ thuận nghịch trong xâu và sắp xếp theo thứ tự từ điển tăng dần.


Đầu vào

Dòng duy nhất chứa xâu S


Giới hạn

1<=len(S)<=10000

S chứa kí tự là chữ cái, chữ số và dấu cách.


Đầu ra

In ra các từ thuận nghịch sau khi sắp xếp


Ví dụ :

Input 01
IAzbbzAI   ocoS iIA ccAAAAAAcc izzbb   aoI iIiAWWAiIi
Output 01
IAzbbzAI ccAAAAAAcc iIiAWWAiIi

Bình luận

Hãy đọc nội quy trước khi bình luận.



  • -1
    Kaybe  đã bình luận lúc 4, Tháng 4, 2025, 14:58

    include <stdio.h>

    include <string.h>

    include <ctype.h>

    include <math.h>

    include <stdlib.h>

    int cmp(const void *a, const void *b){ char *x = (char *)a; char *y = (char *)b; return strcmp(x, y); } int tn(char c[]){ int l = 0, r = strlen(c) - 1; while(l <= r){ if(c[l] != c[r]){ return 0; } ++l, --r; } return 1; } int main(){ char c[10005]; fgets(c, 10005, stdin); c[strlen(c) -1] = '\0'; char a[1000][100]; int n = 0; char *token = strtok(c, " "); while(token != NULL){ strcpy(a[n], token); ++n; token = strtok(NULL, " "); } qsort(a, n, sizeof(a[0]), cmp); for(int i = 0; i < n; i++){ if(tn(a[i])){ printf("%s ", a[i]); } } }