栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

poj 1002 487

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

poj 1002 487

#include<stdio.h>#include<string.h>#include<stdlib.h>char map[] = "22233344455566670778889990";//map - 映射处理-Q,Z 对应的位置可以任何数字, 我用 0 表示 char str[ 80 ], Numbers[ 100001 ][ 9 ];int compare( const void * elem1, const void *elem2 ){return ( strcmp( (char * )elem1, (char *)elem2));}void standardizeTel( int n){int i, j,k;j = k = -1;while( k < 8 ){j++;if(str[j] == '-')continue;k++;if(k == 3){Numbers[n][k]= '-';     //加 ' - ' k++;}if(str[j] >= 'A' && str[j] <= 'Z'){Numbers[n][k] = map[str[j]- 'A']; //处理 continue;}Numbers[n][k] = str[j];}Numbers[n][k] = '';   //加'' }int main(){int n, i, j;int flag;scanf( "%d", &n);for( i = 0; i< n; i++ ){scanf( "%s", str);   //输入 standardizeTel(i);   //化为标准形式 }qsort(Numbers, n, 9, compare);  //排序 flag = 1;   //判断标记 i = 0;while( i < n){j = i; i++; while( i<n && strcmp(Numbers[i],Numbers[j]) == 0)    //判断是否前后是否相等,输出 i++;if(i - j > 1){printf( "%s %dn", Numbers[j], i - j );flag = 0;}}if(flag)printf("No duplicates.n");return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/376462.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号