这道题的难点是空格,于是我偷偷用了一个“getline”,嘻嘻。
都不多说,上代码:
#include<iostream>
 #include <algorithm>
 using namespace std;
 char d[27]={'1','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 e[27];
 struct b{
     string a;
 };
 b c[1005];
 int main(){
     for(int i=1;i<=4;i++) getline(cin,c[i].a);
     for(int i=1;i<=4;i++)
         for(int j=0;j<c[i].a.size();j++)
             for(int k=1;k<=26;k++)
                 if(c[i].a[j]==d[k]){
                     e[k]++;
                     break;}
     int maxx;
     for(int i=(*max_element(e+1,e+27));i>=1;i--){
         for(int j=1;j<=26;j++)
             if(e[j]>=i) maxx=j;
         for(int j=1;j<=maxx;j++){
             if(e[j]>=i) cout<<"*"<<" ";
             else cout<<"  ";
         }
         cout<<endl;
     }
     for(int i=1;i<=26;i++) cout<<d[i]<<" ";
     return 0;
 }









