四个点都TLE了……复杂度真的有这么高吗
查看原帖
四个点都TLE了……复杂度真的有这么高吗
442344
eofitg楼主2023/11/24 14:16

C++20,四个点都TLE了,只拿了20分QAQ

# include <iostream>
# include <string>

using namespace std;

const string alphabet = "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z";
int getId(char c) {
    return c - 'A';
}
int ans[26];

int Max = -1; // 出现次数最多的字母出现的次数

int main() {

    for(int i = 0; i < 4; i ++) { // 读取并生成数据
        char x = getchar();
        while(x != '\n') {
            if(x >= 'A' && x <= 'Z'){
                ans[getId(x)] ++;
                Max = max(Max, ans[getId(x)]);
            }
            x = getchar();
        }
    }

    // 格式化输出表格
    for(int i = Max - 1; i >= 0; i --) {
        for (int j = 0; j < 26; j ++) {
            if(ans[j] - i > 0) {
                cout<<"*";
            } else {
                cout<<" ";
            }
            if(j != 25){
                cout<<" ";
            }
        }cout<<endl;
    }

    cout<<alphabet;

    return 0;
}
2023/11/24 14:16
加载中...