class Solution { public: /** * @param strs: a list of string * @return: return a string */ string splitLoopedString(vector<string> &strs) { // write your code here string s = ""; for (int i = 0; i < strs.size(); i++) { string temp = strs[i]; reverse(temp.begin(),temp.end()); if (temp > strs[i]) s += temp; else s += strs[i]; } string res = s; int n = s.length(), sum = 0; for (int i = 0; i < strs.size(); i++) { string temp = s; reverse(temp.begin()+sum,temp.begin()+sum+strs[i].length()); for (int j = 1; j < strs[i].length(); j++) { res = max(res, max(temp.substr(j+sum,n-j)+temp.substr(0,j+sum), s.substr(j+sum,n-j)+s.substr(0,j+sum))); } sum += strs[i].length(); } return res; } };
-------------end of file
thanks for reading-------------