| ||||||||||
| 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 | |||||||||
高人看看为啥我的1002 总是runtime error#include <stdio.h>
#include <stdlib.h>
#include <iostream>
using namespace std;
char *swp="22233344455566677778889999";
char telnum[20];
void translate_tel(char* tel_input,char* standard_no)
{
int j = 0;
for (int i = 0;tel_input[i] != '\0';i++)
{
if (3 == j)
{
standard_no[j] = '-';
j++;
}
if (tel_input[i] >= 'A' && tel_input[i] <= 'Z')
{
int no_index = tel_input[i] - 'A';
standard_no[j] = swp[no_index];
j++;
}
if (tel_input[i] >= '0' && tel_input[i] <= '9')
{
standard_no[j] = tel_input[i];
j++;
}
}
standard_no[j] = '\0';
return;
}
int comp(const void* leftnum,const void* rightnum)
{
return strcmp((char*)leftnum,(char*)rightnum);
}
int main()
{
int num_of_tel = 0;
cin>>num_of_tel;
char standard_no[100000][9];
for (int i = 0; i < num_of_tel ; i++)
{
cin>>telnum;
translate_tel(telnum,standard_no[i]);
}
qsort(standard_no,num_of_tel,9,comp);
bool NoDuplicated = true;
int DupTimes = 1;
for (int i = 1; i < num_of_tel; i++)
{
if (strcmp(standard_no[i],standard_no[i-1]) == 0)
{
DupTimes++;
NoDuplicated = false;
}
else
{
if (DupTimes != 1)
{
cout<<standard_no[i-1]<<" "<<DupTimes<<endl;
DupTimes = 1;
}
}
}
if (DupTimes != 1)
{
cout<<standard_no[num_of_tel-1]<<" "<<DupTimes<<endl;
NoDuplicated = false;
}
if (NoDuplicated)
{
cout<<"No duplicates."<<endl;
}
}
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator