| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
贴个超时的代码(结果肯定正确)、、、#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
struct Tel
{
string num;
int count;
bool operator < (const Tel &t)
{
if(num < t.num)
return true;
return false;
}
};
string trans(const string &s)
{
string o;
int j = 0;
for(int i = 0; i != s.size(); i++)
{
if(j == 3)
{
o += '-';
j++;
}
if(isdigit(s[i]))
{
o += s[i];
j++;
}
else
{
switch(s[i])
{
case 'A':case 'B':case 'C':
o += '2';
j++;
break;
case 'D':case 'E':case 'F':
o += '3';
j++;
break;
case 'G':case 'H':case 'I':
o += '4';
j++;
break;
case 'J':case 'K':case 'L':
o += '5';
j++;
break;
case 'M':case 'N':case 'O':
o += '6';
j++;
break;
case 'P':case 'R':case 'S':
o += '7';
j++;
break;
case 'T':case 'U':case 'V':
o += '8';
j++;
break;
case 'W':case 'X':case 'Y':
o += '9';
j++;
break;
}
}
}
return o;
}
int main()
{
int n;
scanf("%d\n", &n);
vector<Tel> book;
for(int i = 0; i < n; i++)
{
char st[20];
scanf("%s", st);
string t(st);
t = trans(t);
bool state = true;
for(int i = 0; i != book.size(); i++)
{
if(book[i].num == t)
{
state = false;
book[i].count++;
break;
}
}
if(state)
{
Tel tmp;
tmp.num = t;
tmp.count = 1;
book.push_back(tmp);
}
}
sort(book.begin(), book.end());
int num = 0;
for(int i = 0; i < book.size(); i++)
{
if(book[i].count > 1)
printf("%s %d\n", book[i].num.c_str(), book[i].count);
num++;
}
if(num == 0)
printf("No duplicates.\n");
return 0;
}
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator