UVA - 755 487--3279
来源:互联网 发布:电脑突然断电数据丢失 编辑:程序博客网 时间:2024/05/16 08:47
题目链接
题目意思很简单,统计一系列号码串化成标准形式后出现次数大于1的串,并且按字典序输出。
注意可能有 化成标准形式后全部是同一个串的情况。
#include<cstdio>#include<cstring>#include<ctype.h>#include<algorithm>using namespace std;int f[]={2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8,9,9,9};int cmp(const void* a,const void* b){ char* _a=(char*) a; char* _b=(char*) b; return strcmp(_a,_b);}char s1[100010][50],s2[100010][50];int main(){ //freopen("a.txt","r",stdin); int t,n,i,j,k; char str[256]; scanf("%d",&t); while(t--) { scanf("%d",&n); getchar(); for(i=0;i<n;i++) { k=0; memset(str,'\0',sizeof(str)); scanf("%s",s1[i]); int l=strlen(s1[i]); for(j=0;j<l;j++) { if(isalpha(s1[i][j])) { int c=s1[i][j]-'A'; if(s1[i][j]>'P') c--; s1[i][j]=f[c]+'0'; } if(s1[i][j]!='-')str[k++]=s1[i][j]; } for(j=k;j>3;j--) str[j]=str[j-1]; str[3]='-'; //printf("%s\n",str); strcpy(s2[i],str); } qsort(s2,n,sizeof(s2[0]),cmp); /* for(i=0;i<n;i++) { printf("%s\n",s2[i]); }*/ int s=1,flag=0; for(i=1;i<n;i++) { if(strcmp(s2[i],s2[i-1])==0) { s++; } else if(s>1) { printf("%s %d\n",s2[i-1],s); flag=1; s=1; } } if(s>1) {printf("%s %d\n",s2[n-1],s);flag=1;} if(!flag) printf("No duplicates.\n"); if(t) printf("\n"); } return 0;}
0 0
- UVa 755 - 487--3279
- uva 755 487--3279
- UVa 755 - 487--3279
- uva 755 - 487--3279
- UVA 755 487-3279
- UVA 755 - 487--3279
- UVa 755 - 487--3279
- UVa: 755 - 487--3279
- Uva-755-487--3279
- UVA 755 - 487--3279
- UVa 755 487-3279
- UVa 755 487-3279
- UVa 755 - 487--3279
- UVa:755 - 487--3279
- UVa 755 - 487--3279
- Uva 755 487--3279
- UVA - 755 487--3279
- UVA 755 - 487--3279
- 62应用程序管理器的复杂UI显示&&复用convertView出现的BUG
- IDF - CTF - 牛刀小试
- 香农采样定理及其证明
- Ubuntu下搭建MPI并行计算环境
- 非常好的poi开发指南,收藏一下
- UVA - 755 487--3279
- C++ primer习题笔记
- 作死搞坏自己的ubuntu
- 有关android环境搭建创建AVD的错误:Android AVD出现"No system images installed for this target"
- linux驱动之中断方式获取键值
- git介绍
- 直接使用MYSQL命令导入导出SQL文件
- h.264保存flv文件
- fedora20下安装官方jdk替换openjdk并配置环境变量