posts - 100,  comments - 15,  trackbacks - 0
 1#include<iostream>
 2#include<stdlib.h>
 3using namespace std;
 4int cmp(const void *a, const void *b)
 5{
 6     return(*(int *)a-*(int *)b);
 7}

 8int main()
 9{
10    int n, i,j,t2,flag=0;
11    char t1[300];        
12    cin>>n;
13    int *rec=new int[n];
14    for(i=0;i<n;i++)
15    {
16        scanf("%s",&t1);
17        t2=0;
18        for(j=0; t1[j]!=0 ;j++)
19        {
20            
21            switch(t1[j])
22            {
23            case '0': t2=t2*10+0;break;
24            case '1': t2=t2*10+1;break;
25            case '2'case 'A'case 'B'case 'C':
26                t2=t2*10+2;break;
27            case '3'case 'D'case 'E'case 'F':
28                t2=t2*10+3;break;
29            case '4'case 'G'case 'H'case 'I':
30                t2=t2*10+4;break;
31            case '5'case 'J'case 'K'case 'L':
32                t2=t2*10+5;break;
33            case '6'case 'M'case 'N'case 'O':
34                t2=t2*10+6;break;
35            case '7'case 'P'case 'R'case 'S':
36                t2=t2*10+7;break;
37            case '8'case 'T'case 'U'case 'V':
38                t2=t2*10+8;break;
39            case '9'case 'W'case 'X'case 'Y':
40                t2=t2*10+9;break;
41            }

42
43        }

44        rec[i]=t2;
45    }

46    qsort(rec,n,sizeof(rec[0]),cmp);
47    for(i=0;i<n;)
48    {        
49        int temp=rec[i];
50        int rn=1;
51        for(j=i+1;j<n;j++)
52        {
53            i=j;
54            if(temp==rec[j])
55                rn++;
56            else 
57                break;
58        }
        
59        if(rn>=2)
60        {
61            printf("%03d-%04d %d\n",temp/10000,temp%10000,rn);
62            flag=1;
63        }

64
65            if(j>=n) i++;
66    }

67    if(flag==0) cout<<"No duplicates.\n";
68    return 0;
69}

70

posted on 2009-04-03 01:06 wyiu 阅读(113) 评论(0)  编辑 收藏 引用 所属分类: POJ

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理