| ||||||||||
| 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 | |||||||||
memory limit 郁闷了,来帮我改一下吧#include <stdio.h>
#include <stdlib.h>
int a[10000000]={0};
int que[50001];
int cmp(const void *a,const void *b) {
return *(int *)a-*(int *)b;
}
int main() {
int b[26]={2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,7,8,8,8,9,9,9,9};
char s[100];
int n,i;
int k;
int r;
int num;
int temp;
scanf("%d",&n);
r=0;
for(i=0;i<n;i++) {
num=0;
scanf("%s",s);
for(k=0;s[k]!='\0';k++) {
if(s[k]>='A' && s[k]<='Z'){ num=10*num+b[s[k]-'A'];continue;}
if(s[k]>='0' && s[k]<='9') num=10*num+s[k]-'0';
}
++a[num];
if(a[num]==2) {
que[r]=num;
++r;
}
}
if(r==0){
printf("No duplicates.\n");
}
else {
qsort(que,r,sizeof(que[0]),cmp);
for(i=0;i<r;i++) {
temp=que[i];
printf("%.3d-%.4d %d\n",temp/10000,temp%10000,a[que[i]]);
}
}
return 0;
}
Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator