题目描述

写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过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 Main {
private static Scanner cin; public static void main(String args[]) throws Exception {
cin = new Scanner(System.in);
int maxChar = 0;
int[] count = new int[26];
String line = null;
char[] character = null;
for(int i=0;i<4;i++) {
line = cin.nextLine();
character = line.toCharArray();
for(char c : character) {
if(32 == c) {
//space
continue;
}else if(c>=65 & c<= 90) {
count[c-65] += 1;
if(count[c-65]>maxChar) {
maxChar = count[c-65];
}
}
}
} char[][] outChar = new char[26][maxChar];
for(int i = 0;i<26;i++) {
for(int j = 0; j<maxChar;j++) {
if(j<count[i]) {
outChar[i][j]='*';
}else {
outChar[i][j] = ' ';
}
}
} for(int j=maxChar-1;j>=0;j--) {
for(int i=0;i<26;i++) {
if(i<25) {
System.out.print(outChar[i][j]+" ");
}else {
System.out.print(outChar[i][j]);
}
}
System.out.println();
}
for(int i=0;i<26;i++) {
if(i<25) {
System.out.print((char)(65+i)+" ");
}else {
System.out.print((char)(65+i));
}
}
System.out.println();
} }

Java实现 洛谷 P1598 垂直柱状图的更多相关文章

  1. 洛谷 P1598 垂直柱状图【字符串+模拟】

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

  2. 洛谷—— P1598 垂直柱状图

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

  3. 洛谷 P1598 垂直柱状图

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

  4. 洛谷 P1598 垂直柱状图【字符串】

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

  5. (水题)洛谷 - P1598 - 垂直柱状图

    https://www.luogu.org/problemnew/show/P1598 忘记读取后清空数组,也不知道准确的长度. #include<bits/stdc++.h> using ...

  6. 洛谷——P1598 垂直柱状图

    https://www.luogu.org/problem/show?pid=1598 题目描述 写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过72个字符),然后用柱状图输出每个字 ...

  7. 洛谷P1598 垂直柱状图

    模拟题...我自己一直被光标下去上不去怎么模拟困扰,实际上可以直接从高到低,从左到右模拟 我的代码(算法借鉴题解) #include <bits/stdc++.h> using names ...

  8. Java实现 洛谷 Car的旅行路线

    输入输出样例 输入样例#1: 1 3 10 1 3 1 1 1 3 3 1 30 2 5 7 4 5 2 1 8 6 8 8 11 6 3 输出样例#1: 47.5 import java.util. ...

  9. Java实现 洛谷 P1738 洛谷的文件夹

    题目描述 kkksc03是个非凡的空想家!在短时间内他设想了大量网页,然后总是交给可怜的lzn去实现. 洛谷的网页端,有很多文件夹,文件夹还套着文件夹. 例如:/luogu/application/c ...

随机推荐

  1. Gulp的代理转发插件

    需求背景 前后端分开部署时,需要单独为前端启动一个服务,如果使用gulp-connect的话,那么代理需要额外的插件来配置.首先说下为什么需要代理,gulp-connect是静态web的server( ...

  2. springBoot整合Mybatis,Junit

    笔记源码:https://gitee.com/ytfs-dtx/SpringBoot 整合Mybatis SpringBoot的版本:2.2.5.RELEASE Mybatis版本:mybatis-s ...

  3. C++内存管理学习笔记(1)

    /****************************************************************/ /*            学习是合作和分享式的! /* Auth ...

  4. 黑马程序员_毕向东_Java基础视频教程——转义字符(随笔)

    转义字符 转义字符 通过 \ 来转变后面的字母或符号的含义 \n :换行 \b :退格.相当于 backspace \r : 相当于回车键. Windows系统中,回车是由两个字符来表示 \r \n. ...

  5. git:error: Your local changes to the following files would be overwritten by merge:

    最近用git在服务器.github.本地更新代码的时候,因为频繁修改偶尔出现这个错误 覆盖本地的代码: git stash git pull git stash pop 保留对服务器上的修改: git ...

  6. P3254 圆桌问题 网络流

    P3254 圆桌问题 #include <bits/stdc++.h> using namespace std; , inf = 0x3f3f3f; struct Edge { int f ...

  7. python字符串str

    字符串str常用操作方法(都会产生新的数据) 1.取值: (1)索引:s[0] (2)切片:s[起始索引:结束索引:步长] 起始索引为0,可以省略 s最后一个索引可以取-1 结束索引省略,默认取到最后 ...

  8. F. Pathwalks动态开辟线段树

    题意:n点m边,然后要求走最多的路,走路的时候经过的边权必须是严格递增. 解法1:传统的区间更新 解法2:发现区间更新只是对两个固定的点所延长形成的区间段,所以问题可以退化成单点更新单点查询. 然后动 ...

  9. CF948B Primal Sport

    题目链接:http://codeforces.com/contest/948/problem/B 知识点: 素数 解题思路: \(f(x)\) 表示 \(x\) 的最大素因子.不难想到:\(X_1 \ ...

  10. java--GC overhead limit exceeded--暂时修改JVM内存

    第一步:选择要运行的java文件->RunAs->Run Configurations 第二步:找到(x)=Arguments,在VM arguments中设置:-Xms最小运行内存 -X ...