文章

38

粉丝

11

获赞

2

访问

17.5k

头像
参考大家的简化了cmp
P1255 北京大学机试题
发布于2024年8月26日 21:13
阅读数 602

#include <bits/stdc++.h>
using namespace std;

bool cmp(char a, char b) {
    return tolower(a) < tolower(b);
}
char c[1010];//用于存储a-z和A-Z的字符。
int flag[1010];//用于标记哪一位为非字符。
int main() {
    string s;
    getline(cin ,s);
    int len = s.size();
    int cnt = 0;
    for(int i = 0;i < len;i++) {
        if((s[i] >= 'a' && s[i] <= 'z') || (s[i] >= 'A' && s[i] <= 'Z')){
            c[cnt++] = s[i];
        }
        else {
            flag[i] = 1;
        }
    }

    stable_sort(c,c + cnt,cmp);
    cnt = 0;
    for(int i = 0;i < len;i++){
        if(flag[i] == 1){
            cout <<s[i];
 ...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发