You are viewing a single comment's thread. Return to all comments →
#include <stdio.h> #include <string.h> #include <stdlib.h> void strrev(char* str) { int len = strlen(str); int start = 0; int end = len - 1; while (start < end) { char temp = str[start]; str[start] = str[end]; str[end] = temp; start++; end--; } } char* funnyString(char* s) { int len = strlen(s); char rev_s[len+1]; strcpy(rev_s, s); strrev(rev_s); int diff_s[len-1]; int diff_rev_s[len-1]; for (int i = 1; i < len; i++) { diff_s[i-1] = abs(s[i] - s[i-1]); diff_rev_s[i-1] = abs(rev_s[i] - rev_s[i-1]); } int funny = 1; for (int i = 0; i < len-1; i++) { if (diff_s[i] != diff_rev_s[i]) { funny = 0; break; } } if (funny) { return "Funny"; } else { return "Not Funny"; } } int main() { int t; scanf("%d", &t); while (t--) { char s[10001]; scanf("%s", s); printf("%s\n", funnyString(s)); } return 0; }
Seems like cookies are disabled on this browser, please enable them to open this website
Funny String
You are viewing a single comment's thread. Return to all comments →