您的位置:首页 > 其它

北大OJ_1002题:487-3279

2015-06-18 13:27 309 查看
#include <iostream>
#include <map>
#include <string>

using namespace std;

int main()
{
char szNumMap[] = "22233344455566670778889990";
map<string,int> mResultMap;
string strInputTemp;
string strResult;
int nCaseCount = 0;
cin >> nCaseCount;
while( nCaseCount > 0 )
{
cin >> strInputTemp;
strResult.clear();
for( string::size_type i = 0; i < strInputTemp.size(); ++i )
{
if ( strInputTemp[i] == '-' )	continue;
if ( isdigit( strInputTemp[i] ) )
{
strResult += strInputTemp[i];
}
else
{
strResult += szNumMap[strInputTemp[i]-'A'];
}
}
strResult.insert( 3, 1, '-' );
mResultMap[strResult]++;

--nCaseCount;
}

bool bRepeat = false;
for ( map<string,int>::const_iterator it = mResultMap.begin();
it != mResultMap.end(); ++it )
{
if ( it->second > 1 )
{
cout << it->first << " " << it->second << endl;
bRepeat = true;
}
}
if ( !bRepeat )
{
cout << "No duplicates." << endl;
}

return 0;
}


作者:山丘儿

转载请标明出处,谢谢。原文地址:http://blog.csdn.net/s634772208/article/details/46546981
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: