POJ-2136 Vertical Histogram-用*號統計字母個數
Vertical Histogram
Time Limit: 1000MS | Memory Limit: 65536K | |
Total Submissions: 18160 | Accepted: 8771 |
Description
Write a program to read four lines of upper case (i.e., all CAPITAL LETTERS) text input (no more than 72 characters per line) from the input file and print a vertical histogram that shows how many times each letter (but not blanks, digits, or punctuation) appears
in the all-upper-case input. Format your output exactly as shown.
Input
* Lines 1..4: Four lines of upper case text, no more than 72 characters per line.
Output
* Lines 1..??: Several lines with asterisks and spaces followed by one line with the upper-case alphabet separated by spaces. Do not print unneeded blanks at the end of any line. Do not print any leading blank lines.
Sample Input
THE QUICK BROWN FOX JUMPED OVER THE LAZY DOG. THIS IS AN EXAMPLE TO TEST FOR YOUR HISTOGRAM PROGRAM. HELLO!
Sample Output
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 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
Source
#include <iostream>
#include <cstring>
#include <iomanip>
#include <stdio.h>
#include <cmath>
using namespace std;
int main()
{
char a[72],b[72],c[72],d[72];//分別用來存四行字母串
int s[26],i,max,j;
memset(s,0,sizeof(s));
gets(a);
for(i=0; a[i]!='\0'; ++i)
++s[int(a[i]-'A')];
gets(b);
for(i=0; b[i]!='\0'; ++i)
++s[int(b[i]-'A')];
gets(c);
for(i=0; c[i]!='\0'; ++i)
++s[int(c[i]-'A')];
gets(d);
for(i=0; d[i]!='\0'; ++i)
++s[int(d[i]-'A')];
max=s[0];
for(i=1; i<26; ++i)
if(s[i]>max)
max=s[i];
for(i=0; i<max; ++i)
{
for(j=0; j<26; ++j)
{
if(s[j]>=(max-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;
}
相關文章
- 靜態方法輸出引數統計大寫字母、小寫字母、數字、其他字元的個數字元
- 【閒談】如何統計字串中出現最多的字母與個數字串
- 統計一個字串出現頻率最高的字母/數字字串
- ACM 字母統計ACM
- 我也統計一下字串中出現最多的字母與個數字串
- 用python3統計一行字元中的英文字母,空格,數字和其他字元的個數Python字元
- Java區分大小寫字母數字和符號Java符號
- Java變數命名前倆個字母僅含有一個大寫字母的坑Java變數
- 字母統計(陣列思維)陣列
- Java數字母Java
- 用ChatGPT,快速設計一個真實的賬號系統ChatGPT
- JS對錶格排序(支援對序號,數字,字母,日期)JS排序
- js實現字母+5位數的編號,滿99999自動變字母JS
- 統計字串字元個數字串字元
- isAlnum判斷字元是否為字母數字字元(字母和數字都屬於字母數字字元)字元
- 2951 星號組成字母E
- 040統計數字字元的個數字元
- 規定字串由字母、數字、下劃線和點號組成字串
- 利用HashMap統計字元個數HashMap字元
- 第13周-專案1-小玩檔案-用鍵盤輸入檔名,統計輸出檔案中每個字母、數字字元出現的次數字元
- golang import包前的字母與符號GolangImport符號
- C語言判斷輸入小寫字母的個數C語言
- MySQL查詢某個欄位含有字母數字的值MySql
- 統計陣列個元素出現的個數陣列
- 用於計算數學統計的 PHP 包PHP
- 使用 Java 8 函數語言程式設計生成字母序列Java函數程式設計
- python 統計文章單詞個數Python
- 統計檔案中單詞個數
- POJ 1850 Code/POJ 1496 Word Index(組合數學-字母串序號)Index
- 17_電話號碼的字母組合
- Python如何列印出26個大寫字母和26個小寫字母Python
- 14-vertical-aligin
- C++【生成16個不重複字母】(生成不重複隨機數)C++隨機
- MySQL如何查詢某個欄位含有字母數字的值MySql
- 用Excel做個工程倒數計時牌Excel
- 如何用Python統計不同字元個數?Python字元
- C語言: 分類統計字元個數C語言字元
- python 統計文章單詞個數-1Python