【打卡】牛客网:BM83 字符串变形

资料:

string s;   //字符串

reverse(s.begin(), s.end());    //反转

char a[101]; int m = strlen(a);    //字符数组

reverse(a,a+m);    //翻转

string和字符数组的reverse函数_string reverse-CSDN博客 

此外,'A' 的ASCII码是65,'a' 的ASCII码是97。

模板的:

class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param s string字符串 
     * @param n int整型 
     * @return string字符串
     */
    string trans(string s, int n) {
        // write code here
        for(int i = 0; i < n; i++)
            if(s[i] >= 'a' & s[i] <= 'z')
                s[i] = s[i] - 'a' + 'A';
            else if(s[i] >= 'A' & s[i] <= 'Z')
                s[i] = s[i] - 'A' +'a';
        
        reverse(s.begin(), s.end());

        int i = 0;
        while(i < n){
            int j = i;
            while(j < n & s[j] != ' '){
                j++;
            }
            reverse(s.begin()+i, s.begin()+j);
            i = j + 1;
        }

        return s;
    }
};

你可能感兴趣的:(算法,开发语言)