1 条题解

  • 0
    @ 2025-10-8 16:54:33
    #include <bits/stdc++.h>
    using namespace std;
    int n[5], b[150];//b[c]表示字母c出现了b[c]次 
    int main()
    { 
    	string a;
    	memset(b, 0, sizeof(b));
        for(int i=1; i<=4; i++)
        {
            getline(cin,a), n[i] = a.length(); //记录每行的长度
            for(int j=0; j<n[i]; j++) if(a[j]>='A' && a[j]<='Z') b[a[j]]++; //记录出现次数 
        }
        int maxb=0;
        for(char c='A'; c<='Z'; c++) maxb = max(maxb, b[c]); //记录出现次数最多的字母的出现次数 
        for(int i=maxb; i>0; i--)//直接输出 
        {
            for(char c='A'; c<='Z'; c++)
            {
                if(b[c] >= i) printf("* ");
                else printf("  ");
            }
            printf("\n");
        }
        for(char c='A'; c<='Z'; c++) printf("%c ", c);
        printf("\n");
        return 0;
    }
    
    
    • 1

    【字符串基础】垂直柱状图(字符的值当数字用)

    信息

    ID
    877
    时间
    1000ms
    内存
    128MiB
    难度
    6
    标签
    递交数
    162
    已通过
    49
    上传者