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 |
【请教高手】总是WA,不知道哪里错了,自己做的测试数据都没有问题啊!#include<stdio.h> #include<algorithm> using namespace std; int main() { int array[100001];//用于存储号码信息 char map[] = "22233344455566677778889999";//转换时查表用 memset(array,0,100001);//把array的元素都设为0 char temp[100];//用于接收输入信息 long n,k=0;//n是接收n个号码的个数,k是一个下标 int count=1;//用于计数相同的号码个数,用于判断和输出 bool open=false;//判断是否各个号码都不相同 scanf("%d",&n);//接收个数信息 while(k<n)//接收号码信息和转换操作 { scanf("%s",temp); for(int i=0;temp[i];i++) { if(temp[i]!='-') { if(temp[i]<='9'&&temp[i]>='0') { array[k] = array[k]*10 + temp[i] - '0'; } else array[k] = array[k]*10 + map[temp[i] - 'A'] - '0'; } } k++; } sort(array,array+n);//排序 for(k=0;k<n-1;k++)//输出 { if(array[k] == array[k+1]) { open = true; count++; } else if(count!=1) { printf("%03d-%04d %d\n",array[k]/10000,array[k]%10000,count); count = 1; } } if(count!=1) { printf("%03d-%04d %d\n",array[k]/10000,array[k]%10000,count); count = 1; } if(open == false) 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