鍦–璇█涓疄鐜板鍥炴枃缂栫爜鐨勮В鐮佸拰楠岃瘉
#include <stdio.h>
#include <string.h>
// Function to check if a string is a palindrome
int isPalindrome(char str[]) {
int len = strlen(str);
for (int i = 0; i < len/2; i++) {
if (str[i] != str[len-i-1]) {
return 0;
}
}
return 1;
}
// Function to decode a palindrome-encoded string
void decodePalindrome(char str[], char decoded[]) {
int len = strlen(str);
int j = 0;
for (int i = 0; i < len; i += 2) {
int count = str[i] - '0';
char ch = str[i+1];
for (int k = 0; k < count; k++) {
decoded[j++] = ch;
}
}
decoded[j] = '\0';
}
int main() {
char encoded[] = "3a2b1c2b3a";
char decoded[100];
decodePalindrome(encoded, decoded);
printf("Decoded string: %s\n", decoded);
if (isPalindrome(decoded)) {
printf("Decoded string is a palindrome.\n");
} else {
printf("Decoded string is not a palindrome.\n");
}
return 0;
}
杩欎釜绋嬪簭棣栧厛瀹氫箟浜嗕袱涓嚱鏁帮紝涓€涓敤浜庢鏌ヤ竴涓瓧绗︿覆鏄惁涓哄洖鏂囷紝鍙︿竴涓敤浜庤В鐮佸洖鏂囩紪鐮佺殑瀛楃涓层€備富鍑芥暟涓畾涔変簡涓€涓洖鏂囩紪鐮佸瓧绗︿覆锛屽苟璋冪敤瑙g爜鍑芥暟瀵瑰叾杩涜瑙g爜锛岀劧鍚庤皟鐢ㄥ洖鏂囨鏌ュ嚱鏁板垽鏂В鐮佸悗鐨勫瓧绗︿覆鏄惁涓哄洖鏂囥€?/p>
相关问答