POJ1002 2013.3.17
2016-02-13 19:51
281 查看
POJ1002 2013.3.17
WA因:
1. 没有冗余的时候输出No duplicates.,没有注意到
2. 不足7位要补零,没注意到
TLE因:
1.刚开始用的qsort,最后换成哈希,就过了
WA因:
1. 没有冗余的时候输出No duplicates.,没有注意到
2. 不足7位要补零,没注意到
TLE因:
1.刚开始用的qsort,最后换成哈希,就过了
#include <stdio.h> #include <string.h> #include <stdlib.h> #define MAXN 100010 int dic[256]={0},n; int phone[10000000]={0}; void clearit() { dic['0']=0;dic['1']=1; dic['A']=2;dic['B']=2;dic['C']=2;dic['2']=2; dic['D']=3;dic['E']=3;dic['F']=3;dic['3']=3; dic['G']=4;dic['H']=4;dic['I']=4;dic['4']=4; dic['J']=5;dic['K']=5;dic['L']=5;dic['5']=5; dic['M']=6;dic['N']=6;dic['O']=6;dic['6']=6; dic['P']=7;dic['R']=7;dic['S']=7;dic['7']=7; dic['T']=8;dic['U']=8;dic['V']=8;dic['8']=8; dic['W']=9;dic['X']=9;dic['Y']=9;dic['9']=9; return ; } int main() { freopen("in.txt","r",stdin); freopen("out.txt","w",stdout); int flagf,flag=1; int i,ls,j,k,pn; char str[100005]; clearit(); scanf("%d",&n); if(n==0) { printf("No duplicates.\n"); return 0; } getchar(); for(i=0;i<n;i++) { flagf=1; scanf("%s",str); getchar(); ls=strlen(str); pn=0; for(k=0;k<ls;k++) { if (!((str[k]<='Z' && str[k]>='A')||(str[k]>='0' && str[k]<='9'))) continue; if ((str[k]=='Q')||(str[k]=='Z')) continue; pn=pn*10+dic[str[k]]; } phone[pn]++; } for(i=0;i<=9999999;i++) { if (phone[i]>1) { printf("%03d-%04d %d\n",i/10000,i%10000,phone[i]); flag=0; } } if (flag==1) printf("No duplicates.\n"); fclose(stdin); fclose(stdout); return 0; }
相关文章推荐
- 什么是字体渲染(Font Rendering)?
- VS2008下编译C++程序,找不到 stdint.h,原因及解决方案
- ubuntu14.04 PCL1.8 OPENNI2.0 OPENCV3.0安装小结
- 【小白的CFD之旅】09 初识FLUENT
- 大数据领域的JAVA 学习光速入门
- ADO.NET的五大核心类
- hdu 1166 2011.2.26
- JavaScript操作cookie
- 解释器模式
- zoj1503 2011.2.26
- ClockView时钟类
- 1030. 完美数列
- 无良的中京通达公司,天理何在
- Zoj1013 2011.2.26
- zone.js - 暴力之美
- CodeForces 2B The least round way(dp+数学)
- usaco 5.4.2 2011.2.26
- 新年初六
- 高斯模糊的算法
- 全志A20平台Android编译环境