程设第二轮练习:垂直直方图 解题报告&AC代码
来源:互联网 发布:大数据资源共享 编辑:程序博客网 时间:2024/06/03 00:51
解题报告:
数据读入+处理大致为整行读入,按每一个字符统计各个字母出现的次数,存入预先定义的数组,并比较出最大值。
到这里我直接将结果输出了,我们已经知道输出必定有MAX + 1行,其中MAX为出现最多的那个字母出现的次数,1是因为最下面一行是字母表。
于是我们可以对每行判断:将行标号为MAX+ 1,MAX,...,2,1。该输出第i行第j列的时候检验序号为j的字母出现次数是否达到了j,如果是,则输出‘*’,否则输出空格。
另外注意,列与列间有一个空列(全是空格),我就因为这个Presentation Error了一次,另外用到memset需要include<memory.h>,那次Compile Error就是因为这个。
AC代码:
#include <iostream>#include <memory.h>#include <string.h>#include <cstdlib>using namespace std;int main(){int i, j;int res[26];char buffer[81];memset(res, 0, sizeof(res));for(i = 0; i != 4; ++i){cin.getline(buffer, sizeof(buffer));int len = strlen(buffer);for(j = 0; j != len; ++j){if(isalpha(buffer[j])){res[buffer[j] - 'A']++;}}}int maxres = 0;for(i = 0; i != 26; ++i){if(res[i] > maxres){maxres = res[i];}}for(i = 0; i != maxres; ++i){for(j = 0; j != 26; ++j){if(j > 0){cout << " ";}if(res[j] >= maxres - i){cout << "*";}else{cout << " ";}}cout << endl;}cout << "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" << endl;return 0;}
下面贴上题(图片格式):
- 程设第二轮练习:垂直直方图 解题报告&AC代码
- OpenJudge 2745:显示器 解题报告&AC代码
- 【比赛练习ac题】poj2253+hdu2717+poj2387+poj1258【解题报告】
- AC Me解题报告
- [Hnoi2010]Matrix 矩阵解题报告及AC代码
- POJ-1006 生理周期(Biorhythms) 解题报告&AC代码
- OpenJudge 4043:GPA排名系统 解题报告&AC代码
- OpenJudge 4030:统计单词数 解题报告&AC代码
- USACO Training Section 1.2 Transformations 解题报告&AC代码
- USACO Training Section 1.2 Palindromic Squares 解题报告&AC代码
- USACO Training Section 1.2 Dual Palindromes 解题报告&AC代码
- USACO Training Section 1.3 Mixing Milk 解题报告&AC代码
- USACO Training Section 1.3 Barn Repair 解题报告&AC代码
- USACO Training Section 1.3 Calf Flac 解题报告&AC代码
- USACO Training Section 1.3 Prime Cryptarithm 解题报告&AC代码
- POJ 2787 算24 解题报告&AC代码
- 【0.9%】SPOJ7758 Grwoing Strings 解题报告 + AC代码 + 思路 + AC自动机简短总结
- 2014百度之星初赛第二轮解题报告:best_financing
- Android布局之屏幕自适应
- Android布局之weight属性解析
- 六周任务4.1
- 关于ISE10.1DSP_tool不能用matlabR2008的解决办法
- VC 获取托盘图标信息
- 程设第二轮练习:垂直直方图 解题报告&AC代码
- 第六周实验报告(任务4)
- redis发布订阅和自定义的命令组合
- Learning SQL2
- BASE64编码与解码(Base64Encode,Base64Decode)
- java第二课 java语言基础
- cramfs
- [平衡树]BallIntheBox
- 推荐系统的循序进阶读物(从入门到精通)