下午茶时间(并查集)

在这里插入图片描述
在这里插入图片描述
行 1…Q1…Q:如果第 jj 个询问的两头奶牛认识, 第 j行输出"Y"。如果不认识,第 jj 行输出"N"。

输出时每行末尾的多余空格,不影响答案正确性

样例输入

5 3 3 
2 5 
2 3 
4 5 
2 3 
3 5 
1 5 

样例输出

Y 
Y 
N 
题意:
对于给出的两个数检查是否认识,认识打印Y否则的话打印N;
阶梯思路:
将认识的分群,最后检查即可(并查集模板)

Accept Code:

#include<stdio.h>
int f[50005];
int getf(int v)
{
	return f[v]==v ? v:getf(f[v]); 
}
void merge(int v,int u)
{
	int t1=getf(v);
	int t2=getf(u);
	if(t1!=t2)
	f[t2]=t1;
	return;
}
int main()
{
	int i,x,y,n,m,s;
	while(scanf("%d %d %d", &n,&m,&s)!=EOF)
	{
		for(i=1; i<=n; i++)
	    f[i]=i; 
		for(i=1; i<=m;i++)
		{
			scanf("%d %d", &x,&y);
			merge(x,y);
		}
		for(i=1; i<=s; i++)
		{
			scanf("%d %d", &x,&y);
			if(getf(x)==getf(y))
			printf("Y\n");
			else
			printf("N\n");
		}
	}
	return 0;
}
使用C语言、vscode软件、g++编译器、utf-8编码环境,做一个家庭菜谱管理系统 这个系统的菜单功能有:1.添加菜谱,2.删除菜谱,3.修改菜谱,4.查找菜谱,5.随机选择 1.添加菜谱,菜谱信息:菜名,菜谱id(按照加入的名字系统自动生成),分类(早午晚餐、下午茶(甜品、零食、饮品)、冷热、口味、菜系、状态),食材,步骤,时间,器具,喜好者 2.删除菜谱可以根据菜名、菜谱id查找到对应的菜谱,显示菜谱信息,确定是否删除,是则删除成功,否则取消操作 3.修改菜谱可以根据菜名、菜谱id查找到对应菜谱,显示菜谱信息后,选择要修改的对应信息修改该信息,修改完成后显示修改后的菜谱信息 4.查找菜谱可以根据菜名、菜谱id、分类、时间、器具、喜好者查询相应一个或多个菜谱,显示相关信息,也可以显示全部的菜谱信息 5.随机选择可以选择生成一餐或几天的餐食,一餐可选择是早餐,午餐,晚餐,下午茶四者中的哪一个,然后再按照冷热、口味、状态、菜系、喜好者来填写信息,也可选择每个的数量,如果相应信息未填写,则默认这项选择随机,比如冷热中冷菜两个,口味中辣,则从菜谱库中随机选择出两个是冷菜且口味中辣的菜谱,显示这两个菜谱的信息的;若是生成几天的,则要填写每天的早午晚下午茶中,每顿需要的菜的数量,再按照生成一餐的菜谱的信息填写,生成出几天的每顿餐的餐食,并给出食材采购的清单 给出这个系统的完整c文件和h文件,给出每个文件中完整的代码和注释
07-14
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

皮皮皮皮皮皮皮卡乒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值