#include <iostream> using namespace std; int main() { string s; while(getline(cin,s)){ int max=1; /*记录第i个字符对应的数据,该数据只和最长长度有关 负数表示前-ss[i]个(包括自己)都是相同的字符(并且对称) 正数表示下标i+1-ss[i]到i位置的字符串对称且字符不全相同 按以上规则更新数组数据,遍历一遍,时间O(n),空间O(n)*/ int data[s.size()]; data[0]=-1; for(int i =1;i<s.size();i++){ if(dat...