UVA644

UVA644题意:输入多个序列,判断是否存在前缀关系。思路如下:现

大家好,又见面了,我是你们的朋友全栈君。

题意:输入多个序列,判断是否存在前缀关系。思路如下:先按照长度大小排序,再用两重循环,依次判断每一个序列是否存在前缀。

#include<iostream>
#include<string.h>
#include<algorithm>
using namespace std;

#define N 101
#define M 50

struct T{
	char str[M];
};

int cmp(const T &a, const T &b)
{
	return strlen(a.str) < strlen(b.str);
}

int main()
{
	T tem[N];
	int cnt = 0;
	int t = 1;
	int bo = 0;
	while(cin >> tem[cnt].str)
	{
		if (strcmp(tem[cnt++].str, "9"))
			continue;

		sort(tem, tem + cnt, cmp);

		for (int i = 0; i < cnt; i++)
		{
			int k = strlen(tem[i].str);
			for (int j = i + 1; j < cnt; j++)
			{
				if (strncmp(tem[i].str, tem[j].str, k) == 0)
				{
					bo = 1;
					break;
				}
			}

			if (bo)
				break;
		}
			
		if (bo)
			cout << "Set " << t++ << " is not immediately decodable" << endl;	
		else
			cout << "Set " << t++ << " is immediately decodable" << endl;
		
		// Init.
		memset(tem, 0, sizeof(tem));
		bo = 0;
		cnt = 0;
	}
	return 0;}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149388.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • ubuntu php环境搭建(ubuntu python安装)

    1.安装Apachesudoapt-getinstallapache2测试:浏览器访问http://localhost//会出现网页。查看状态:serviceapache2status/start/stop/restartWeb目录:/var/www安装目录:/etc/apache2/全局配置:/etc/apache2/apache2.con…

    2022年4月16日
  • 【Tools】Ubuntu20.04安装VMware Tools详解

    【Tools】Ubuntu20.04安装VMware Tools详解00.目录文章目录00.目录01.VMwareTools简介02.VMwareTools功能03.VMwareTools安装方法一05.VMwareTools安装方法二06.附录01.VMwareTools简介VMwareTools中包含一系列服务和模块,可在VMware产品中实现多种功能,从而使用户能够更好地管理客户机操作系统,以及与客户机操作系统进行无缝交互。VMwareTools生命周期管理为VMwareTools的安装和升级提供了一种简单而可扩展的

    2022年5月9日
  • traceroute详解[通俗易懂]

    traceroute详解[通俗易懂]traceroute详解1.traceroute基本概念traceroute(Windows系统下是tracert)命令利用ICMP协议定位您的计算机和目标计算机之间的所有路由器。TTL值可以反映数据包经过的路由器或网关的数量,通过操纵独立ICMP呼叫报文的TTL值和观察该报文被抛弃的返回信息,traceroute命令能够遍历到数据包传输路径上的所有路由器。traceroute是一条缓慢…

    2022年6月29日
  • 与运算(&)、或运算(|)、异或运算(^)、进制转换

    与运算(&)、或运算(|)、异或运算(^)、进制转换参加运算的两个对象,按二进制位进行运算。进制转换地址:http://tool.oschina.net/hexconvert/一:与运算符(&)预算规则:0&0=0;0&1=0;1&0=0;1&1=1即:两个同时为1,结果为1,否则为0例如:3&5十进制3转为二进制的3:00000011十进制5转为二进制的5:0000…

    2022年5月29日
  • DirectX修复工具全部文件修复失败或下载失败的解决方法

    DirectX修复工具全部文件修复失败或下载失败的解决方法最后更新于2019-2-24问题描述  近日接连接到一些用户的反馈,说他们在使用DirectX修复工具的时候,所有文件的状态均为修复失败或者下载失败(如下图)。虽然他们使用的是标准版或增强版而非在线修复版,程序还是会尝试下载需要的DirectX组件。注:由于我无法复现此现象,因此此图片来自网络截图。所有权归原上传者所有。  之后他们也都按照程序的提示以安全模式启动系统…

    2022年6月9日
  • python 列表的基本操作

    python 列表的基本操作列表常用方法:name=['zhangsan','lisi','wangwu','xieqi']name2=[1,2,3,4]

    2022年7月5日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号