P1598
无语的是,我以为题目条件的‘在任何一行末尾不要打印不需要的多余空格’意思是每一行都只能到最后一个 '*' 出现就换行,然后用了 '\b',结果怎么都不过,于是看了题解,发现别人都没管这个 = =!!,于是我就去掉'\b',就绿了。
下面代码就是加上判断'没有多余空格'的,去掉所有出现 space 的地方就可以了。
#include <bits/stdc++.h>
using namespace std;
#define rep(i, a, b) for(int i = a; i < b; i++)
#define min(a, b) ((a) < (b) ? (a) : (b))
#define max(a, b) ((a) > (b) ? (a) : (b))
#define index(a) (a - 'A')
#define transUpp(a) (a - 32)
#define transLow(a) (a + 32)
#define ll long long
#define PB push_back
int gcd(int a, int b){return b == 0 ? a : gcd(a%b, a);}
const int N = 1000010;
int main(int n, char**v)
{
char letter[26], s[N];
int m = -1, spaces;
rep(i, 0, 26) letter[i] = 0;
for (int i = 0; i < 4; i++)
{
fgets(s, N, stdin);
for (int j = 0; s[j]; j++)
if (s[j] >= 'A' && s[j] <= 'Z')
{
letter[index(s[j])] += 1;
m = max(m, letter[index(s[j])]);
}
}
for(int i = m; i > 0; i--)
{
spaces = 0;
rep(j, 0, 26)
{
if (letter[j] == i)
{
spaces = 0;
letter[j] -= 1;
cout << "* ";
}
else if (i > 0) cout << " ";
spaces += 1;
}
rep(j, 0, space) cout << '\b';
cout << '\n';
}
rep(i, 0, 26) cout << (char)(65 + i) << ' ';
return 0;
}
P1598的更多相关文章
- 洛谷 P1598 垂直柱状图【字符串+模拟】
P1598 垂直柱状图 题目描述 写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过72个字符),然后用柱状图输出每个字符在输入文件中出现的次数.严格地按照输出样例来安排你的输出格式. ...
- 洛谷—— P1598 垂直柱状图
P1598 垂直柱状图 题目描述 写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过72个字符),然后用柱状图输出每个字符在输入文件中出现的次数.严格地按照输出样例来安排你的输出格式. ...
- (水题)洛谷 - P1598 - 垂直柱状图
https://www.luogu.org/problemnew/show/P1598 忘记读取后清空数组,也不知道准确的长度. #include<bits/stdc++.h> using ...
- 洛谷 P1598 垂直柱状图
P1598 垂直柱状图 题目描述 写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过72个字符),然后用柱状图输出每个字符在输入文件中出现的次数.严格地按照输出样例来安排你的输出格式. ...
- 洛谷 P1598 垂直柱状图【字符串】
题目描述 写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过72个字符),然后用柱状图输出每个字符在输入文件中出现的次数.严格地按照输出样例来安排你的输出格式. 输入输出格式 输入格式 ...
- 字符串、散列--P1598 垂直柱状图
题目描述 写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过100个字符),然后用柱状图输出每个字符在输入文件中出现的次数.严格地按照输出样例来安排你的输出格式. 输入输出格式 输入格 ...
- 洛谷P1598 垂直柱状图
模拟题...我自己一直被光标下去上不去怎么模拟困扰,实际上可以直接从高到低,从左到右模拟 我的代码(算法借鉴题解) #include <bits/stdc++.h> using names ...
- 洛谷——P1598 垂直柱状图
https://www.luogu.org/problem/show?pid=1598 题目描述 写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过72个字符),然后用柱状图输出每个字 ...
- P1598 垂直柱状图
输入格式: 四行字符,由大写字母组成,每行不超过100个字符 输出格式: 由若干行组成,前几行由空格和星号组成,最后一行则是由空格和字母组成的.在任何一行末尾不要打印不需要的多余空格.不要打印任何空行 ...
随机推荐
- Android基础知识 -- Fragment
Fragment是android3.0后提供的API(所以android:minSdkVersion="11"以上版本),主要针对平板UI.有自己的生命周期,但是必须依附在Acti ...
- jmeter 登陆--查询存在否-->新建客户-->查询存在否 + 压测
1.登陆 正则表达式提取器和json提取器,都是后置处理器提取token(都可以在响应中以regexp tester 和 json path tester查看提取的对不对) beanshell 后置处 ...
- Python3标准库:string通用字符串操作
1. string:通用字符串操作 string模块在很早的Python版本中就有了.以前这个模块中提供的很多函数已经移植为str对象的方法,不过这个模块仍保留了很多有用的常量和类来处理str对象. ...
- MySql -- primary key主键约束
4.primary key主键约束 在一张表中: 1) 主键约束是 NOT NULL.UNIQUE唯一的记录. 2) 主键约束必须是唯一的值. 3) 主键约束列不能包含 NULL 值. 注意:每个表都 ...
- TCP/IP详解,卷1:协议--第6章 ICMP:Internet控制报文协议
引言 I C M P经常被认为是 I P层的一个组成部分.它传递差错报文以及其他需要注意的信息. I C M P报文通常被I P层或更高层协议( T C P或U D P)使用.一些I C M P报文把 ...
- ❀❀ 名词解释(PM、PD、UE、UI、RD....)
PM:产品经理,项目负责人.一个产品,首先由PM来分析细分市场.目标客户的诉求,规划产品的卖点.杀手级应用,这个过程通常PD已经介入了,这个层面上,商业问题.业务逻辑的流畅是思考的焦点. 举凡产品从创 ...
- mongo 改数据库名称
用命令 db.copyDatabase('old_name', 'new_name') 可以备份出一个新的数据库. 然后 use old_name 并db.dropDatabase() 即可删除旧的 ...
- 路飞-git操作
复习 """ 1.pip换源 - 采用国内源下载,速度快 2.虚拟环境 - 可以为项目单独配置开发环境,方便管理依赖模块及模块的版本迭代 3.后台项目重构目录结构 4.后 ...
- group by分组后对组内数据进行排序
查询 每个班级英语成绩最高的前两名的记录 原文:https://www.cnblogs.com/hxfcodelife/p/10226934.html select a.Classid,a.Engli ...
- java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException
运行项目时出现java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException时,只 ...