| ||||||||||
| 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 | |||||||||
TLE Problem, Help-- Thanks,#pragma warning (disable : 4786)
#include <algorithm>
#include <iostream>
#include <string>
using namespace std;
string a[100002];
int n;
string Translate(string str) {
int i;
string New = "";
for(i = 0; i < str.length(); i++) {
switch(str[i]) {
case 'A': case 'B': case 'C':
New += "2";
break;
case 'D': case 'E': case 'F':
New += "3";
break;
case 'G': case 'H': case 'I':
New += "4";
break;
case 'J': case 'K': case 'L':
New += "5";
break;
case 'M': case 'N': case 'O':
New += "6";
break;
case 'P': case 'R': case 'S':
New += "7";
break;
case 'T': case 'U': case 'V':
New += "8";
break;
case 'W': case 'X': case 'Y':
New += "9";
break;
case '-':
break;
default:
New += str[i];
break;
};
}
return New;
};
void input() {
int i;
cin >> n;
for(i = 1; i <= n; i++) {
cin >> a[i];
a[i] = Translate(a[i]);
}
}
bool operator<(const string &t1, const string &t2) {
return t1 < t2;
}
void output() {
int i, j;
i = 1;
while(1) {
if(i > n)
break;
j = i + 1;
for(;; j++) {
if(a[j] != a[i])
break;
}
if(j - i >= 2)
cout << a[i][0] << a[i][1] << a[i][2] << '-' << a[i][3] << a[i][4] << a[i][5] << a[i][6] << ' ' << j - i << '\n';
i = j;
}
}
int main() {
input();
sort(a + 1, a + n + 1);
output();
return 0;
}
Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator