POJ 1002题 解题报告
来源:互联网 发布:java json转对象 编辑:程序博客网 时间:2024/04/29 02:10
这个是超时版的:
#include<iostream>
#include<string>
using namespace std;
typedef struct TelephoneNumber{//表示电话号码的结构体
string number;//电话号码串
int prefix;//首数字
int count;//重复次数
}TelephoneNumber;
/*
#include<fstream>
fstream fin ("input.txt",ios::in);
#define cin fin
//*/
struct TelephoneNumber Transform(struct TelephoneNumber m)
{
int i;
for(i=0;m.number[i]=='-';)
m.number.erase(i,1);
for(i=m.number.length()-1;m.number[i]=='-';i--)
m.number.erase(i,1);
for(i=0;i<m.number.length();)//去掉连接符
if(m.number[i]=='-')
m.number.erase(i,1);
else
i++;
for(i=0;i<7;i++)
{
switch(m.number[i])
{
case 'A':
case 'B':
case 'C':
case '2': m.number[i]='2'; break;
case 'D':
case 'E':
case 'F':
case '3': m.number[i]='3'; break;
case 'G':
case 'H':
case 'I':
case '4': m.number[i]='4'; break;
case 'J':
case 'K':
case 'L':
case '5': m.number[i]='5'; break;
case 'M':
case 'N':
case 'O':
case '6': m.number[i]='6'; break;
case 'P':
case 'R':
case 'S':
case '7': m.number[i]='7'; break;
case 'T':
case 'U':
case 'V':
case '8': m.number[i]='8'; break;
case 'W':
case 'X':
case 'Y':
case '9': m.number[i]='9'; break;
}
}
m.number.insert((string::size_type)3,1,'-');//加上连接符
m.prefix=m.number[0]-'0';//给其首数字字段赋值
return m;
}
int main()
{
int i,j,T,flag=0;
struct TelephoneNumber m;
cin>>T;
struct TelephoneNumber *resultSet=new struct TelephoneNumber[T];//号码集
for(i=0;i<T;i++)
{
cin>>m.number;
resultSet[i]=Transform(m);
//cout<<resultSet[i].number<<" "<<resultSet[i].prefix<<endl;
}
for(i=0;i<T;i++)
{
resultSet[i].count=1;//初始化结构体中用于统计重复次数的count
if(resultSet[i].number=="")//跳过已搜索过的串
continue;
else
{
for(j=i+1;j<T;j++)
if(resultSet[i].number==resultSet[j].number)
{
resultSet[j].number="";//相同的只保留一个,其余的都清空,以后就不用重复搜索了
resultSet[i].count++;
}
}
}
for(i=0;i<=9;i++)
for(j=0;j<T;j++)
if(resultSet[j].count>1 && resultSet[j].prefix==i)//被清空的串的count值一定是1
{
flag=1;
cout<<resultSet[j].number<<" "<<resultSet[j].count<<endl;
}
if(!flag)
cout<<"No duplicates."<<endl;
return 0;
}
- POJ 1002题 解题报告
- POJ 1002解题报告
- POJ 1002 解题报告
- POJ-1002-487-3279-解题报告
- POJ 1002 解题报告 487-3279
- poj解题报告——1002
- POJ 1002 487-3279 [解题报告] Java
- POJ 2012题Joseph解题报告
- poj数百篇解题报告
- poj 1141解题报告
- poj 1001解题报告
- poj 1011 解题报告
- poj 1087 解题报告
- poj 2153解题报告
- poj 2051解题报告
- POJ 1167 解题报告
- poj 1026 解题报告
- POJ 1077 解题报告
- 杂文章
- 游戏开发之四 设置世界空间
- linux系统下安装flashplayer
- Effective Concurrency 1 The Pillars of Concurrency
- 函数可重入性及编写规范
- POJ 1002题 解题报告
- IT,技术人员的不归路
- 牛人对模拟技术的理解
- 从今天开始学习剐牛的平常心
- 好难啊
- 欢迎加入arcgis engine java QQ群
- DNN学习之页面间跳转----------
- 运营商应用商店现状(一)-----MM、色狼和警察的故事
- dmalloc 原文 翻译整理(3)