P1598 垂直柱状图 java

P1598 垂直柱状图 java

P1598 垂直柱状图题目

/*

  • 题目描述
    写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过100个字符),然后用柱状图输出每个字符在输入文件中出现的次数。严格地按照输出样例来安排你的输出格式。

输入格式
四行字符,由大写字母组成,每行不超过100个字符

输出格式
由若干行组成,前几行由空格和星号组成,最后一行则是由空格和字母组成的。在任何一行末尾不要打印不需要的多余空格。不要打印任何空行。

输入输出样例
输入 #1复制
THE QUICK BROWN FOX JUMPED OVER THE LAZY DOG.
THIS IS AN EXAMPLE TO TEST FOR YOUR
HISTOGRAM PROGRAM.
HELLO!
输出 #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
说明/提示
每行输出后面不允许出现多余的空格。

  • */
    import java.util.Scanner;

public class MainO {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] rec = new int[26];
String s = “”;
for (int i = 0; i < 4; ++i)
s += sc.nextLine();
char[] crec = s.toCharArray();
int t = 0, max = Integer.MIN_VALUE;
for (int i = 0; i < crec.length; ++i) {
t = crec[i] - 65;
if (t >= 0 && t <= 25) {
rec[t]++;
max = Math.max(max, rec[t]);
}
}
for (int i = max; i >= 1; --i) {
for (int j = 0; j < 26; ++j) {
if (rec[j] == i) {
rec[j]–;
System.out.print("* “);
} else
System.out.print(” ");
}
System.out.println();
}
for (int i = 0; i < 26; ++i) {
if (i != 25)
System.out.print((char) (i + 65) + " ");
else
System.out.print((char) (i + 65));
}
sc.close();
}
}

你可能感兴趣的:(java,洛谷,字符串)