百炼OJ - 1002 - 方便记忆的电话号码
题目链接
思路
开个一千万的数组计数,最后遍历即可。
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int num=0;
int mymap[10000000] = {0};
int change(char a[201])
{
int j=0, result=0;
for(int i=0;i<strlen(a);i++)
{
if(a[i] == '-') continue;
if(a[i] <= '9' && a[i] >= '0')
{
result = result*10+a[i]-'0';
continue;
}
if( a[i] <= 'O' && a[i] >= 'A' )
{
result = result*10+ (int)((a[i]-'A')/3) + 2;
continue;
}
switch (a[i])
{
case 'P':
case 'R':
case 'S':
result = result*10+7;
break;
case 'T':
case 'U':
case 'V':
result = result*10+8;
break;
case 'W':
case 'X':
case 'Y':
result = result*10+9;
break;
}
}
return result;
}
int main()
{
int n,times=0;
char temp[201];
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%s",temp);
int flag = 0, t;
t = change(temp);
mymap[t] ++;
}
int flag = 0;
for(int i=0;i<10000000;i++)
{
if(mymap[i] < 2) continue;
flag = 1;
char p[8] = {0};
sprintf(p,"%d",i);
if( strlen(p) <= 4 )
{
for(int j=0;j<3;j++)
printf("0");
printf("-");
for(int j=0;j<4-strlen(p);j++)
printf("0");
for(int j=0;j<strlen(p);j++)
printf("%c",p[j]);
}
else
{
for(int j=0;j<7-strlen(p);j++)
printf("0");
for(int j=0;j<strlen(p)-4;j++)
printf("%c",p[j]);
printf("-");
for(int j=strlen(p)-4;j<strlen(p);j++)
printf("%c",p[j]);
}
printf(" %d\n",mymap[i]);
}
if( flag == 0 ) puts("No duplicates.");
return 0;
}
百炼OJ - 1002 - 方便记忆的电话号码的更多相关文章
- PKU OJ 1002 487-3279
PKU OJ 1002 487-3279 487-3279 Description Businesses like to have memorable telephone numbers. One w ...
- 九度OJ 1002:Grading
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:18410 解决:4753 题目描述: Grading hundreds of thousands of Graduate Entrance ...
- Light oj 1002 Country Roads (Dijkstra)
题目连接: http://www.lightoj.com/volume_showproblem.php?problem=1002 题目描述: 有n个城市,从0到n-1开始编号,n个城市之间有m条边,中 ...
- OJ#1002 又是a+b
题目描述: 给定两个正整数a.b(0 < a,b < =10000),求出a+b的和 输入描述: 多组输入,每组输入为一行,里面有2个数a,b(0 < a,b < =10000 ...
- oj 1002题 (大数题)
#include <stdio.h> #include <string.h> int main(void) { int q,j,h,k,l; int d; ],s2[];//题 ...
- 九度oj 1002 Grading 2011年浙江大学计算机及软件工程研究生机试真题
#include<iostream> #include<queue> #include<cstdio> #include<cstring> #inclu ...
- 杭电oj 1002
#include <iostream> #include <algorithm> using namespace std; int nCases; ], n[]; ], b[] ...
- PKU 百炼OJ 简单密码
http://bailian.openjudge.cn/practice/2767/ #include<iostream> #include <cmath> #include ...
- PKU 百炼OJ 奖学金
http://bailian.openjudge.cn/ss2017/A/ #include<iostream> #include <cmath> #include <m ...
随机推荐
- 0级搭建类006-Oracle Solaris 安装 (10.13) 公开
项目文档引子系列是根据项目原型,制作的测试实验文档,目的是为了提升项目过程中的实际动手能力,打造精品文档AskScuti. 项目文档引子系列目前不对外发布,仅作为博客记录.如学员在实际工作过程中需提前 ...
- jQuery---动态创建节点
动态创建节点 js的方法 var box = document.getElementById("box"); var a = document.createElement(&quo ...
- [Python]BeautifulSoup标签的遍历
1.下行遍历 标签树的下行遍历.content 子节点列表,将tag所有儿子节点存入列表.children 子节点的迭代类型,与.contents类似用于循环遍历儿子节点.descendants 子孙 ...
- 6.Dockerfile 指令
概述 我们已经介绍了 FROM,RUN,还提及了 COPY, ADD,其实 Dockerfile 功能很强大,它提供了十多个指令.下面我们继续讲解其他的指令. COPY 格式: COPY <源路 ...
- 1.什么是 Docker
官网地址:https://www.docker.com/ Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,它是基于 dotCloud ...
- PHPstorm配置xdebug问题小记
安装的是符合自己环境的xdebug,因为是按照xdebug官网的步骤安装的:安装什么版本检测地址:https://xdebug.org/wizard.php,安装操作复制phpinfo()内容之后点击 ...
- Abp的swagger UI 出现Failed to load API definition.
Abp 出现Failed to load API definition.如下图: 原因:本次出现的原因是Api里面的方法重名了(只是方法的参数不一样)(可能是controller中的auction上面 ...
- C++ socket编程-转载
转自:https://www.cnblogs.com/L-hq815/archive/2012/07/09/2583043.html 若有违规请联系我删除. 介绍 Socket编程让你沮丧吗?从man ...
- 2018-2019 ACM-ICPC, Asia East Continent Final L Eventual … Journey
#include<iostream> using namespace std; ; int cnt[MAX]; int ans[MAX]; int a[MAX]; int main() { ...
- centos下配置mongodb定期备份
https://brickyang.github.io/2017/03/02/Linux-%E8%87%AA%E5%8A%A8%E5%A4%87%E4%BB%BD-MongoDB/ 1.创建备份脚本 ...