int main() { cout << longestPalindrome("cbbd").c_str() << endl; cout << longestPalindrome("noon").c_str() << endl; cout << longestPalindrome("a").c_str() << endl; return 0; }
string longestPalindrome(string s) { if (s.empty()) return s; int ret_head(0), ret_tail(0); for (int i = 0; i < s.length(); ++i) { longestPalindrome(s, i, i, ret_head, ret_tail); longestPalindrome(s, i, i + 1, ret_head, ret_tail); } return s.substr(ret_head, ret_tail - ret_head + 1); }
int main() { char s[] = "uuyyyu"; printf("%s\n", s); char *ans = longestPalindrome(s); printf("%s\n", ans); return 0; }
int main() { char s[10000]; gets(s); printf("%s",longestPalindrome(s)); return 0; }
int main() { char *subStr = longestPalindrome("asdfeefdfsgr"); printf("%s\n", subStr); free(subStr); return 0; }
int main() { char s[] = "helloworld!"; //char *s是定义s为常量区,所以不能指针操作,char s[]将s存在了栈区 char *ret; ret = longestPalindrome(s); printf("%s\n", ret); return 0; }
int main(int argc, char *argv[]) { char *s = "jglknendplocymmvwtoxvebkekzfdhykknufqdkntnqvgfbahsljkobhbxkvyictzkqjqydczuxjkgecdyhixdttxfqmgksrkyvopwprsgoszftuhawflzjyuyrujrxluhzjvbflxgcovilthvuihzttzithnsqbdxtafxrfrblulsakrahulwthhbjcslceewxfxtavljpimaqqlcbrdgtgjryjytgxljxtravwdlnrrauxplempnbfeusgtqzjtzshwieutxdytlrrqvyemlyzolhbkzhyfyttevqnfvmpqjngcnazmaagwihxrhmcibyfkccyrqwnzlzqeuenhwlzhbxqxerfifzncimwqsfatudjihtumrtjtggzleovihifxufvwqeimbxvzlxwcsknksogsbwwdlwulnetdysvsfkonggeedtshxqkgbhoscjgpiel"; char *ss = longestPalindrome(s); printf("src:%s\ndest:%s\n",s,ss); free(ss); return 0; }
void main(int argc, char * argv[]) { if (argc != 2) { printf("Please specify the correct arguments.\n"); return; } printf("Longest palindromic substring in \"%s\" is: %s.\n", argv[1], longestPalindrome(argv[1])); }
int main() { //char s[]="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; // char s[]="abcccba"; char s[]="a"; longestPalindrome(s); return 0; }
int main() { char s[20]; char *palindrome; gets_s(s, 20 * sizeof(char)); palindrome = longestPalindrome(s); puts(palindrome); getchar(); return 0; }
int main(){ char str[3000]; char* s; while(1){ scanf("%s", str); s = longestPalindrome(str); printf("%s\n",s); } return 0; }
int main(int argc, char **argv) { if (argc != 2) { printf("usage: a.out <string>\n"); exit(-1); } printf("the length of the longest palindrome substring is: %d\n", longestPalindrome(argv[1], strlen(argv[1]))); return 0; }
int main(void) { char str[MAXLINE], *token, palindrome[100]; while (fgets(str, MAXLINE, stdin) != NULL) { for (token = strtok(str, DELIMITERS); token != NULL; token = strtok(NULL, DELIMITERS)) { longestPalindrome(token, palindrome); printf("%s", palindrome); } printf("\n"); } }
int main(int argc, char const *argv[]) { char s[] = "abb"; char *substring = longestPalindrome(s); printf("%s\n", substring); return 0; }
int main(int argc, char **argv) { if (argc > 1) printf("%s\n", longestPalindrome(argv[1])); return(0); }
int main() { char s[] = "dddddddd"; printf("%s\n", s); printf("%s\n", longestPalindrome(s)); return 0; }
int main(int argc, char **argv) { char s[] = "abba"; printf("%d\n", longestPalindrome(s)); return 0; }
// time : O(n^2) // sapce : O(1) // TLE string shortestPalindrome_1(string s) { int end = longestPalindrome(s); string addingStr = s.substr(end); reverse(addingStr.begin(), addingStr.end()); return addingStr + s; }
int main(void) { char *s = "\0"; printf("%s\n", longestPalindrome(s)); return 0; }
int main() { char *s = "1"; printf("%s\n", longestPalindrome(s)); return 0; }
//leetcode submission end ----------------- int main() { char * out; printf("%s\n",longestPalindrome("aaabaaaa")); }