1127: 电话号码
题目描述
我们知道一个电话号码A是另一个电话号码B的前缀,B是不能被拨打的。
举个例子,A是123,B是12345。当按下123后我们是给A打电话而不是给B。
给出N个电话号码,你的任务是找出是否存在两个号码A和B,满足A是B的前缀。
输入
输入由几组数据组成。
每一组的第一行有一个整数N (0<N<1001),表示电话号码的数量。
接下来的N行,每行是一个电话号码。
测试数据以一个0结束。
输出
对于每组测试数据,如果存在一个电话号码不能被拨打,输出“NO”,否则输出“YES”。
样例输入
2 012 012345 2 12 012345 0
样例输出
NO YES
提示
来源
11级侯少琼
如果穷举尽了所有的可能,还是没有找到有号码A是号码B的前缀的一种可能,那么则打印Yes
代码示例:
#include<stdio.h>
#include<string.h>
struct number//结构体变量用于储存每一个电话号码
{
char c[100];
};
int main()
{
int n,i,j,k,flag1,flag2,len1,len2,len;
//struct number num[10000];//如果使用的不是Minimalist GNUfor Windows编译器,请使用这种方式定义结构体数组变量
while(scanf("%d",&n)&&n)
{
struct number num[n];//动态定义结构体数组变量的大小(这在Minimalist GNUfor Windows编译器上可以正常运行,已测试多次)
for(i=0;i<n;i++)
{
scanf("%s",num[i].c);//接受输入的号码
}
for(i=0;i<n;i++)
{
flag2=0;
len1=strlen(num[i].c);
for(j=i+1;j<n;j++)
{
len2=strlen(num[j].c);
len=len1<len2?len1:len2;
flag1=0;//用于标记号码A和号码B在取号码A和B最小长度的情况下,有几个字符是相同的
for(k=0;k<len;k++)
{
if(num[i].c[k]==num[j].c[k])
{
flag1++;
}
else
{
break;
}
}
if(flag1==len)
{
flag2++;//用于标注是否找到了号码A是号码B的前缀
break;
}
}
if(flag2)
{
printf("NO\n");//一定要注意这里,所有字母全部大写,我就在这里被坑了四次
break;
}
}
if(!flag2)//在穷举了所有可能之后,如果还没找到有号码A是号码B的前缀的可能存在,则输出Yes
{
printf("YES\n");//一定要注意这里,所有字母全部大写,我就在这里被坑了四次
}
}
}
1127: 电话号码相关推荐
- 电话号码正则表达式键盘弹起验证
<!--电话号码正则表达式键盘弹起验证--> <input class="telphone-number" onkeyup="(this.v=funct ...
- java电话号码开头_JS使用正则验证手机号包含400和800开头号码
正则表达式,又称正规表示法.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符 ...
- php正则邮箱验证,php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)...
本文实例需要验证的内容:邮件地址.Url地址.电话号码.邮政编码,验证方法分享给大家供大家参考,具体内容如下 1.电子邮件地址的校验 /* 校验邮件地址*/ function checkMail($e ...
- 编写程序创建一个通讯录文件,在其中存入10位同学的姓名、年龄、电话号码,并在屏幕上输出第2、4、6、8、10位同学的信息
<程序设计基础-c语言>杨莉 刘鸿翔 ISBN-978-7-03-032903-5 p257 习题8 8.编写程序创建一个通讯录文件,在其中存入10位同学的姓名.年龄.电话号码,并在屏幕上 ...
- 防止在iOS设备中的Safari将数字识别为电话号码
转:防止在iOS设备中的Safari将数字识别为电话号码 在测试中发现iPad上的Safari总会把长串数字识别为电话号码,文字变成蓝色,点击还会弹出菜单添加到通讯录. 别的地方倒也罢了,如果在用户名 ...
- java 验证手机号码、电话号码(包括最新的电信、联通和移动号码)
目前的号码段(2017-06-01更新) java代码 package com.linbilin.test;import java.util.regex.Pattern;public class Ch ...
- 电话号码 【trie树】
电话号码 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描写叙述 给你一些电话号码,请推断它们是否是一致的,即是否有某个电话是还有一个电话的前缀. 比方: Emerg ...
- php绑定邮箱地址链接,php完美匹配邮箱、链接地址和电话号码
2012/01/31日 更新: 匹配手机以及电话号码 重新修改,可支持18开头的手机号,并修改bug,可匹配出字符串中所有匹配号码! 经过多次测试,以下代码可以实现邮箱.链接地址和电话号码的匹配 匹配 ...
- 从html中提取手机号码,C#从字符串中提取电话号码、手机号码
C#程序目的:从一堆字符串中提取电话号码.手机号码,要求字符串中的号码以非数字字符分割.原理:利用正则表达式提取纯数字字符串数组,然后利用长度等号码特征,筛选过滤. 代码: //思路仅供参考 //nu ...
最新文章
- python加号换行,Python字符串拼接六种方法介绍
- Hadoop Pig学习笔记 各种SQL在PIG中实现
- Boost:GPU上的2D图像中绘制最终的随机“walk”,并使用OpenCV进行显示
- Tensorflow从入门到精通之:Tensorflow基本操作
- Swift--基本数据类型(一)
- “互联网+”促传统企业三大转型
- mongo的php查询,使用PHP进行简单查询的mongo查询速度慢
- 27岁博士毕业,32岁成清华博导!黄高助理教授:DenseNet发明者
- 好看的个人主页,个人引导页
- ssh整合,明明已经导入包,却总是有很多ClassNotFoundException
- 软考信息系统项目管理师_信息化与信息系统3_软件工程_新一代信息技术---软考高级之信息系统项目管理师005
- python实现新闻网站_Python 教你 4 行代码开发新闻网站通用爬虫
- AJAX 跨域调用和 Java 跨域 发送请求
- ios学习笔记——对象归档
- 怎么检查计算机和打印机是否连接网络,检查电脑是否正确连接网络打印机
- DDR3 Vivado 仿真测试成功
- 网页设计常用色彩搭配表
- 8.声卡驱动06-自己实现alsa驱动-虚拟声卡-widget
- 1000个苹果和10个筐子
- 书评--把信送给加西亚