package myPackage;
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
String[] input=new String[4];
int[] cnt=new int[26],row=new int[26];
for(int i=0;i<4;i++) {
input[i]=in.nextLine();
for(int j=0;j<input[i].length();j++) {
if(input[i].charAt(j)>='A'&&input[i].charAt(j)<='Z') {
cnt[input[i].charAt(j)-65]++;
}
}
}
for(int i=0;i<26;i++) {
for(int j=i;j<26;j++) {
if(cnt[j]>=row[i]) {
row[i]=cnt[j];
}
}
}
int L=row[0];
int[]col=new int[L];
int[][]mat=new int[L][26];
for(int i=0;i<L;i++) {
for(int j=0;j<26;j++) {
if(row[j]>i) {
mat[i][j]=1;
col[i]+=mat[i][j];
}
}
}
for(int i=0;i<26;i++) {
for(int j=0;j<cnt[i];j++) {
mat[j][i]=2;
}
}
for(int i=L-1;i>=0;i--) {
for(int j=0;j<26;j++) {
if(mat[i][j]==2) {
System.out.print("*");
}else if(mat[i][j]==1){
System.out.print(" ");
}
if(j<col[i]-1) {
System.out.print(" ");
}
}
System.out.println();
}
System.out.println("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");
}
}
#include<bits/stdc++.h>
using namespace std;
char str[205][205];
int cnt[50];
int maxm[205];
int main() {
for (int i = 1; i <= 4; i++) {
string s;
getline(cin, s);
for (int j = 0; j < s.size(); j++) {
if (s[j] >= 'A' && s[j] <= 'Z') {
cnt[s[j] - 'A']++;
}
}
}
int maxn = 0;
for (int i = 0; i < 26; i++) {
maxn = max(maxn, cnt[i]);
}
for (int j = 0; j < 26; j++) {
str[maxn][j] = (char)('A' + j);
}
for (int j = 0; j < 26; j++) {
int tmp = cnt[j];
for (int i = maxn - tmp; i < maxn; i++) {
str[i][j] = '*';
maxm[i] = max(maxm[i], j);
}
}
for (int i = 0; i < maxn; i++) {
for (int j = 0; j <= maxm[i]; j++) {
if (str[i][j] != '*') {
str[i][j] = ' ';
}
cout << str[i][j];
if (j != maxm[i]) {
cout << ' ';
}
}
cout << endl;
}
for (int i = 0; i < 26; i++) {
cout << str[maxn][i];
if (i != 25) {
cout << ' ';
}
}
cout << endl;
return 0;
}
|