POJ 2800 垂直直方图 解题报告
生活随笔
收集整理的這篇文章主要介紹了
POJ 2800 垂直直方图 解题报告
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
POJ 2800 垂直直方圖 解題報(bào)告
編號(hào):2800
?
考查點(diǎn):簡(jiǎn)單計(jì)算題
?
思路: 用gets()讀入4行數(shù)據(jù),然后按字符統(tǒng)計(jì),顯示的時(shí)候有點(diǎn)小處理即可.
提交情況: 感覺(jué)POJ的測(cè)試數(shù)據(jù)有點(diǎn)騙人,特殊字符好像不止那三個(gè),導(dǎo)致我Runtime Error了幾次,改了字符是否是字母的判斷條件就AC了.。
?
Source Code:
?
//POJ?Grids?2800
#include?<string>
#include?<iostream>
using?namespace?std;
int?num[26];
int?main()
{
????char?str[200];
????for?(int?i=0;i<4;i++)
????{
????????memset(str,0,sizeof?str);
????????gets(str);
????????int?len?=?strlen(str);
????????for?(int?j=0;j<len;j++)
????????{
????????????if?(str[j]>='A'&&str[j]<='Z')
????????????{
????????????????num[str[j]-'A']++;
????????????}
????????}
????}
????int?max?=?0;
????for?(int?i=0;i<26;i++)
????{
????????if?(num[i]>max)
????????{
????????????max?=?num[i];
????????}
????}
????for?(int?i=max;i>0;i--)
????{
????????for?(int?j=0;j<26;j++)
????????{
????????????if?(num[j]>=i)
????????????????cout<<"*?";
????????????else
????????????????cout<<"??";
????????}
????????cout<<endl;
????}
????for?(int?i=0;i<26;i++)
????{
????????cout<<(char)('A'+i)<<"?";
????}
????cout<<endl;
????return?0;
}
總結(jié): 這個(gè)應(yīng)該是最近做的一道比較不水的題了,雖然也很水.還有,本子出了點(diǎn)問(wèn)題,嚴(yán)重影響做題.。
?
???????????????????????????????? ??????????????????????By?? Ns517
????????????????????????????????????????????????????? Time 09.02.26
轉(zhuǎn)載于:https://www.cnblogs.com/ns517/archive/2009/02/27/1400045.html
總結(jié)
以上是生活随笔為你收集整理的POJ 2800 垂直直方图 解题报告的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 打磨自己
- 下一篇: UniCode 速查表