【xdoj离散数学上机】T283

news/2025/2/19 4:24:05/

递归函数易错:

防止出现递归死循环!

题目

 题目:求诱导出的等价关系的关系矩阵

问题描述

给定有限集合上二元关系的关系矩阵,求由其诱导出的等价关系的关系矩阵。

输入格式

第一行输入n,表示矩阵为n阶方阵,第二行给出关系矩阵

输出格式

诱导出的等价关系的关系矩阵

样例输入

样例1;

3

1 0 0

0 0 0

0 0 1

样例2:

3

1 1 1

0 0 0

0 0 1

样例输出

样例1;

1 0 0

0 1 0

0 0 1

样例2:

1 1 1

1 1 1

1 1 1

 代码实现:

#include<bits/stdc++.h>
using namespace std;int main()
{int n; cin>>n;vector<vector<int>>graph(n, vector<int>(n, 0));	for(int i = 0; i < n; i++){for(int j = 0; j < n; j++){//对称性int cur = graph[i][j]; if(cur == 1) cin>>cur; else cin>>graph[i][j];if(graph[i][j] == 1){graph[j][i] = 1;}//自反性if(i == j) graph[i][j] = 1;}}//传递性set<int>st;	auto dfs = [&](auto& dfs, int fa, int cur) -> void{for(int i=0; i<n; i++){if(cur != i && graph[cur][i] == 1){if(!st.count(i))//防止在两个关联项之间死循环递归{graph[fa][i] = 1;graph[i][fa] = 1;st.insert(i);dfs(dfs, fa, i);}}}		return;	};//调用递归时间	for(int i=0; i<n; i++){st.insert(i);dfs(dfs, i, i);st.clear();}//输出for(int i=0; i<n; i++){for(int j = 0; j < n; j++){cout<<graph[i][j]<<" ";}cout<<endl;}	return 0;
}


http://www.ppmy.cn/news/1572211.html

相关文章

100N03-ASEMI豆浆机专用MOS管100N03

编辑&#xff1a;ll 100N03-ASEMI豆浆机专用MOS管100N03 型号&#xff1a;100N03 品牌&#xff1a;ASEMI 封装&#xff1a;TO-252 最大漏源电流&#xff1a;100A 漏源击穿电压&#xff1a;30V 批号&#xff1a;最新 RDS&#xff08;ON&#xff09;Max&#xff1a;5.0mΩ…

Lean 工具链教程 | Lake elan

前边安装 Lean4 提到了 Lean 项目开发的三件套&#xff1a;版本管理器 elan 包管理器和构建工具 lake 语言本身的核心组件 lean。本篇分别介绍这三个工具的基本用法。 elan 常用功能 elan 是 Lean 版本管理器&#xff0c;用于安装、管理和切换不同版本的 Lean。 版本管理&…

初学总结SpringBoot项目在mac上环境搭建和运行

mac一定要安装上homebrew&#xff0c;这个玩意在mac上搭建环境贼拉好用&#xff0c;打开终端安装国内镜像的 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"1. brew安装maven brew install maven2.修改maven国内镜像 ma…

【React】react-redux+redux-toolkit实现状态管理

安装 npm install reduxjs/toolkit react-reduxRedux Toolkit 是官方推荐编写Redux的逻辑方式&#xff0c;用于简化书写方式React-redux 用来链接Redux和React组件之间的中间件 使用 定义数据 创建要管理的数据模块 store/module/counter.ts import { createSlice, Payloa…

基于SSM+uniapp的数学辅导小程序+LW示例参考

1.项目介绍 系统角色&#xff1a;管理员、普通用户功能模块&#xff1a;用户管理、学习中心、知识分类管理、学习周报管理、口算练习管理、试题管理、考试管理、错题本等技术选型&#xff1a;SSM&#xff0c;Vue&#xff08;后端管理web&#xff09;&#xff0c;uniapp等测试环…

海思3559a_使用2.0.4.0版SDK编译固件下载后i2c_write和i2c_read不支持怎么办

问题如下&#xff1a; 烧录完固件后想读取i2c寄存器内容发现不支持&#xff0c;如下&#xff1a; 解决方法如下&#xff1a; 进入Hi3559AV100_SDK_V2.0.4.0/osdrv/tools/board/reg-tools-1.0.0 在该目录下make 该目录下的bin文件内容如下&#xff1a; 将bin目录下的内容…

使用pocketpal-ai在手机上搭建本地AI聊天环境

1、下载安装pocketpal-ai 安装github的release APK 2、安装大模型 搜索并下载模型&#xff0c;没找到deepseek官方的&#xff0c;因为海外的开发者上传了一堆乱七八糟的deepseek qwen模型&#xff0c;导致根本找不到官方上传的……deepseek一开源他们觉得自己又行了。 点击之…

Microsoft Edge 浏览器调优

文章目录 一、基础环境二、适用场景三、过程方法 一、基础环境 操作系统&#xff1a;Microsoft Windows 10 / 11 和 Microsoft Windows Server 2019 / 2022 / 2025浏览器&#xff1a;Microsoft Edge 二、适用场景 安装 MicEdge之后&#xff0c;不希望 Edge 频繁更新以及退出…