class Solution {
public:
    string trans(string s, int n) {
        // write code here
        int left = 0, right = s.length()-1;
        char temp;
        while(left < right){
            temp = s[left];
            s[left] = s[right];
            s[right] = temp;
            s[left] = zhuanhuan(s[left]);
            s[right] = zhuanhuan(s[right]);
            left++;
            right--;
        }
        if(left == right){
            s[left] = zhuanhuan(s[left]);
        }
        
        left=0, right=0;
        while(right < s.length()){
            while(right < s.length() && s[right] != ' '){
                right++;
            }
            int i = left, j = right-1;
            while(i < j){
                temp = s[i];
                s[i] = s[j];
                s[j] = temp;
                i++;
                j--;
            }
            left = right+1;
            right++;
        }
        
        return s;
    }
    
    char zhuanhuan(char a){
        if(a >= 'a' && a <= 'z'){
            return toupper(a);
        }
        else{
            return tolower(a);
        }
    }
    
};