Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save wpaladins/724cb62b5c320f9aee744dfeea9a2dd9 to your computer and use it in GitHub Desktop.

Select an option

Save wpaladins/724cb62b5c320f9aee744dfeea9a2dd9 to your computer and use it in GitHub Desktop.

Revisions

  1. wpaladins created this gist May 21, 2020.
    36 changes: 36 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,36 @@
    string longestPalindrome(string s) {
    int n = s.size(), jT = 0, kT = 0, maxL = 0;
    for (int i = 0; i < n; ++i) {
    int j = i, k = i;
    while (j >= 0 && k < n) {
    if (s[j] == s[k]) {
    j--;
    k++;
    }
    else {
    break;
    }
    }
    if (j + 1 != k - 1 && k - j + 1 > maxL) {
    jT = j + 1;
    kT = k - 1;
    maxL = k - j + 1;
    }
    j = i, k = i + 1;
    while (j >= 0 & k < n) {
    if (s[j] == s[k]) {
    j--;
    k++;
    }
    else {
    break;
    }
    }
    if (j != k - 1 && k - j + 1 > maxL) {
    jT = j + 1;
    kT = k - 1;
    maxL = k - j + 1;
    }
    }
    return s.substr(jT, kT - jT + 1);
    }