class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param s string字符串 
     * @param n int整型 
     * @return string字符串
     */
    string trans(string s, int n) 
    {
        int i=0;
        int j=0;
        vector <string> a;
        for(i=0;i<n;i++)
        {
            if(s[i]!=' ')
            {
                string b;
                while(i<n  &&  s[i]!=' ')
                {
                    b+=s[i];
                    i++;
                }
                a.push_back(b);
                i--;
            }
            else 
            {
                string b;
                while(i<n  &&  s[i]==' ')
                {
                    b+=s[i];
                    i++;
                }
                i--;
                a.push_back(b);
            }
        }
        int len=a.size();
        string ans;
        for(i=len-1;i>=0;i--)
        {
            int len2=a[i].size();
            for(j=0;j<len2;j++)
            {
                if(a[i][j]>='a'  &&  a[i][j]<='z')
                {
                    ans+=a[i][j]-32;
                }
                else
                {
                    if(a[i][j]>='A'  &&  a[i][j]<='Z')
                    {
                        ans+=a[i][j]+32;
                    }
                    else 
                    {
                        ans+=a[i][j];
                    }
                }
            }
        }
        return ans;
    }
};