POJ 1002 487-3279(水题)
来源:互联网 发布:手机做广告软件 编辑:程序博客网 时间:2024/06/08 18:42
没什么好说的,事先设置一个表,对应字母到数字的转换,读入每一位并对应转换成int存起来,排序后即可判断有多少重复,代码还是丑陋不堪,C和C++不分
#include<iostream>#include<string>#include<stdlib.h>using namespace std;int numint[110000]={0};char number[110000][100]={0};int compare(const void *a, const void *b){return(*(int *)a-*(int *)b);}int main(){int n=0,i=0,j=0,N=0,point=1000000,d[40]={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},k=0;cin>>n;getchar();for(i=0;i<n;i++){gets(number[i]);N=strlen(number[i]);point=1000000;for(j=0;j<N;j++){if(number[i][j]=='-'){continue;}if(number[i][j]<='9'&&number[i][j]>='0'){numint[i]+=(number[i][j]-'0')*point;point=point/10;continue;}numint[i]+=d[number[i][j]-'A']*point;point=point/10;}}qsort(numint,n,sizeof(int),compare);for(i=0;i<n;i++){for(j=i+1;j<n;j++){if(numint[i]!=numint[j]){if(j-i>1){printf("%03d-%04d %d\n", numint[i]/10000, numint[i]%10000, j-i);i=j-1;k=1;break;}else{i=j-1;break;}}}if(numint[i]==numint[j-1]&&j==n&&i!=j-1){printf("%03d-%04d %d\n", numint[i]/10000, numint[i]%10000, j-i);k=1;break;}}if(!k){cout<<"No duplicates."<<endl;}}
- POJ 1002 487-3279(水题)
- POJ水题1002 487-3279
- POJ--1002 487-3279
- POJ 1002 487-3279
- POJ 1002 487-3279
- POJ 1002 487-3279
- poj 1002 "487-3279"
- POJ 1002 487-3279
- poj 1002 487-3279
- poj 1002 487-3279
- POJ-1002 487-3279
- poj 1002 487-3279
- POJ 1002 487-3279
- poj 1002 487-3279
- (POJ 1002) 487-3279
- POJ 1002 487-3279
- POJ 1002 487-3279
- [POJ]1002 487-3279
- 让Foxmail不收取旧邮件
- 统计一段字符串中各字符出现的个数(java)
- android增加按键
- warning C4996: “strcpy”被声明为否决的解决办法
- Linux设备驱动学习
- POJ 1002 487-3279(水题)
- 跳槽这半年的小结-加油,坚持下来 战胜懒惰。
- grep 常用命令
- Codeforces Round #203(Div. 2)B. Resort
- android面试题:请介绍下Android中常用的五种布局
- linux中单引号、双引号、反引号的作用
- Eclipse中自动载入WEB-INF/lib下jar包的方法
- UISearchBar背景透明,去掉背景,自定义背景(转)
- OLTP和OLAP小结