zoukankan      html  css  js  c++  java
  • 2800:垂直直方图

    2800:垂直直方图

    总时间限制: 
    1000ms
     
    内存限制: 
    65536kB
    描述

    输入4行全部由大写字母组成的文本,输出一个垂直直方图,给出每个字符出现的次数。注意:只用输出字符的出现次数,不用输出空白字符,数字或者标点符号的输出次数。

    输入
    输入包括4行由大写字母组成的文本,每行上字符的数目不超过80个。
    输出
    输出包括若干行。其中最后一行给出26个大写英文字母,这些字母之间用一个空格隔开。前面的几行包括空格和星号,每个字母出现几次,就在这个字母的上方输出一个星号。注意:输出的第一行不能是空行。
    样例输入
    THE QUICK BROWN FOX JUMPED OVER THE LAZY DOG.
    THIS IS AN EXAMPLE TO TEST FOR YOUR
    HISTOGRAM PROGRAM.
    HELLO!
    
    样例输出
                                *
                                *
            *                   *
            *                   *     *   *
            *                   *     *   *
    *       *     *             *     *   *
    *       *     * *     * *   *     * * *
    *       *   * * *     * *   * *   * * * *
    *     * * * * * *     * * * * *   * * * *     * *
    * * * * * * * * * * * * * * * * * * * * * * * * * *
    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<stdio.h>  
    #include<iostream>
    using namespace std;
    #include<string.h>  
    int main() 
    {
        char queueofletter[26]={'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'};
        int N=4;
        char str[81];
        int i,j;
        int sum[26];
        int strcnt[100][26];
        memset(sum,0,26*sizeof(int));
        while(N--)
        {
            gets(str);
            int len=strlen(str);
            for(int t=0;t<len;t++)//统计字符个数
            {
                if(str[t]>='A'&&str[t]<='Z')
                {
                    sum[str[t]-'A']++;
                }
            }
        }
        int max=0;
        for(int t=0;t<26;t++)
        {
            if(sum[t]>max)
                max=sum[t];
        }
        for(i=max;i>0;i--)//取最大的字母个数作为行数
        {
            for(j=0;j<26;j++)//取26个字母做为列数
            {
            
                if(sum[j]>=i)//如果字母的个数大于等于纵坐标,则输出(*空格)
                {
                    printf("* ");
                }
                else//否则输出(空格 空格)
                {
                    printf("  ");
                }
                //printf("
    ");
            }
            printf("
    ");
        }
        printf("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
    ");
        return 0;  
    }
    以大多数人努力程度之低,根本轮不到去拼天赋~
  • 相关阅读:
    项目笔记:统计页面功能实现
    jquery easyui datagrid实现数据改动
    Skia图片解码模块流程分析
    TRIZ的成功案例
    基于HTML5的Web SCADA工控移动应用
    webservices系列(五)——javaweb整合Axis2及多service配置
    org.hibernate.PropertyValueException: not-null property references a null or transient value: model.
    线程池和异步线程
    [leetcode]Implement strStr()
    Python工作日类库Busines Holiday介绍
  • 原文地址:https://www.cnblogs.com/gcter/p/7405017.html
Copyright © 2011-2022 走看看