POJ 1002
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
struct In{
int a;
int num[];
}pu_1[]; int cmp(const void*c,const void*d)
{
return (*(In *)c).a-(*(In *)d).a;
} char str_1[][]={};
int pu_2[][]={};
int main()
{
int i,j,m,n,flog,k;
scanf("%d",&m);
for(i=;i<m;i++)
scanf("%s",str_1[i]);
for(i=;i<m;i++)
for(j=,n=,k=,pu_1[i].a=;j<strlen(str_1[i]);j++)
{
if(str_1[i][j]<=''&&str_1[i][j]>='')
{
pu_1[i].a+=(str_1[i][j]-'')*n;
n/=;
pu_1[i].num[k]=str_1[i][j]-'';
k++;
}
if(str_1[i][j]<='P'&&str_1[i][j]>='A')
{
pu_1[i].a+=((str_1[i][j]-'A')/+)*n;
n/=;
pu_1[i].num[k]=(str_1[i][j]-'A')/+;
k++;
}
if(str_1[i][j]>'Q'&&str_1[i][j]<='Y')
{
pu_1[i].a+=(((str_1[i][j])-'Q')/+)*n;
n/=;
pu_1[i].num[k]=(str_1[i][j]-'Q')/+;
k++;
}
}
qsort(pu_1,m,sizeof(pu_1[]),cmp);
for(i=,j=;i<m;i++)
{
if(i==) pu_2[j][]=pu_1[i].a;
else{
if(pu_1[i].a==pu_2[j][]) pu_2[j][]++;
else {
j++;
pu_2[j][]=pu_1[i].a;
}
}
}
for(i=,j=,flog=;i<m;i++)
{
if(pu_2[j][]!=&&pu_1[i].a==pu_2[j][])
{
printf("%d%d%d-%d%d%d%d",pu_1[i].num[],pu_1[i].num[],pu_1[i].num[],pu_1[i].num[],pu_1[i].num[],pu_1[i].num[],pu_1[i].num[]);
printf(" %d\n",pu_2[j][]+);
flog++;
j++;
}
if(pu_2[j][]==) j++;
}
if(flog==) printf("No duplicates.\n");
return ;
}
利用一个结构体,一个存号码的数字和,一个存它的每一位数,考虑0开头的号码
然后再利用结构体进行排序
并进行输出
POJ 1002的更多相关文章
- 字符串专题:map POJ 1002
第一次用到是在‘校内赛总结’扫地那道题里面,大同小异 map<string,int>str 可以专用做做字符串的匹配之类的处理 string donser; str [donser]++ ...
- POJ 1002 487-3279
A - 487-3279 Time Limit:2000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u Submit ...
- [POJ 1002] 487-3279 C++解题报告
487-3279 Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 228365 Accepted: 39826 D ...
- Poj 1002 487-3279(二叉搜索树)
题目链接:http://poj.org/problem?id=1002 思路分析:先对输入字符进行处理,转换为标准形式:插入标准形式的电话号码到查找树中,若有相同号码计数器增加1,再中序遍历查找树. ...
- 开篇,UVA 755 && POJ 1002 487--3279 (Trie + DFS / sort)
博客第一篇写在11月1号,果然die die die die die alone~ 一道不太难的题,白书里被放到排序这一节,半年前用快排A过一次,但是现在做的时候发现可以用字典树加深搜,于是乐呵呵的开 ...
- POJ 1002 UVA 755 487--3279 电话排序 简单但不容易的水题
题意:给你许多串字符串,从中提取电话号码,输出出现复数次的电话号码及次数. 以下是我艰难的AC历程:(这题估计是我刷的题目题解次数排前的了...) 题目不是很难理解,刚开始想到用map,但stl的ma ...
- poj 1002:487-3279(水题,提高题 / hash)
487-3279 Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 236746 Accepted: 41288 Descr ...
- [POJ] #1002# 487-3279 : 桶排序/字典树(Trie树)/快速排序
一. 题目 487-3279 Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 274040 Accepted: 48891 ...
- POJ 1002 - 487-3279 STL
先把不是标准格式的字符串变成标准格式再输出出现两次以上的标准串和出现的次数不然输出 "No duplicates." #include <iostream> #incl ...
随机推荐
- js字节转换、字节转换GB等
//文件大小换算 function bytesToSize(bytes) { if (bytes === 0) return '0 B'; var k = 1024; sizes = ['B','KB ...
- Jedis 例子(demo)大全
第一步:到git下载jedis源码,如果你用maven或者gradle,那么直接下官方的即可,地址:https://github.com/xetorthio/jedis:如果你用ant,下载这个:ht ...
- GDB 修改当前判断函数的返回值(即修改寄存器的值)的方法
工作中遇到的问题: 在GDB调试时要进入下边该判断后边的函数,而m_EtherDecode.Chk_MakeSure_IP_Pkt(pPacket,dwPacketLen)的返回值是false,所以需 ...
- Eclipse常用开发插件
以下是我整理的自己开发过程中的常用Eclipse插件,按字母排序: (1) AmaterasUML 介绍:Eclipse的UML插件,支持UML活动图,class图,sequen ...
- phpmyadmin中访问时出现2002 无法登录 MySQL 服务器
phpmyadmin中访问时出现2002 无法登录 MySQL 服务器! 解决方法如下: 修改phpmyadmin目录中libraries文件夹下的config.default.php文件 $cfg[ ...
- Linux系统安装LAMP
说明: 系统版本:Ubuntu14.04-LTS,可以在Ubuntu官网直接下载.Ubuntu其他版本也可安装本方法搭建LAMP环境! 步骤一,安装apache2 1 sudo apt-get ins ...
- An error I have completed recently
在上学期开发javaweb的项目中,遇见一个字符串池的问题. 大致如下: 在上传一篇文章的时候,通过字符串的截取获取该篇文章的后缀名,如doc.pdf.txt....然后规定只能上传pdf和doc格式 ...
- JAVA 笔记
一.Java基础以及面向对象编程1.float类型的数自动转换成double类型时,可能会出现前后不相等的情况,因为有些数不能够用有限的二进制位精确表示.2.右移>>右移,左边空出位以符号 ...
- Linux文件处理命令
1.权限处理 1.1 方法一 使用+-=的方法 1.1.1权限 rwx r 读 w 写 x 执行 1.1.2用户 ugoa u 所有者 g 用户组 o 其他人 a 表示以上所有 修改文件的方法 例: ...
- 1.2 从 ACID 到 CAP/BASE
1.事务 事务(Tranction)是指,由一系列对系统中数据进行访问与更新操作,所组成的一个逻辑执行单元.狭义上的事务是指数据库事务. 事务有四个特性. 原子性:原子性要求事务只允讲有两种状态,全部 ...