Example:
Input: s = "abcdefg", k = 2 Output: "bacdfeg"
- The string consists of lower English letters only.
- Length of the given string and k will in the range [1, 10000]
A:
class Solution { public: string reverseStr(string s, int k) { int n = s.length(); vector<char> A(n, 'a'); for(int i = 0; i<n;++i) { char ch = s[i]; int base = i/k; if(base%2) { A[i] = s[i]; }else{ int j = i - base*k; A[min(n, (base+1)*k) - j -1] = ch; } } string res(A.begin(), A.end()); return res; } };
No comments:
Post a Comment