C语言 每日一题 PTA 10.25 day4

news2024/9/25 19:20:16

10.25
求解马鞍点问题
若矩阵Anm中某个元素A[i][j]是矩阵第i行中值最小的元素,同时又是第j列中值最大的元素,则称元素A[i][j]是矩阵中的一个马鞍点。
设以二维数组存储矩阵,编写算法求矩阵A中的所有马鞍点,算法的时间复杂度要尽量的低。
注意当最大值(最小值)并列相等时,会出现多鞍点的情况。
输入格式 :
第一行输入矩阵的总行数M和总列数N,以空格间隔。
之后的M行,依次输入矩阵的各行数据,以空格间隔。
输出格式 :若有马鞍点,则以行序为主序,依次输出各个马鞍点。
每个马鞍点以(row, col, val)的形式输出,其中row 代表马鞍点的行号,col代表马鞍点的列号,val代表马鞍点的值。
若无马鞍点,则输出“NONE”。

#include <stdio.h>
#define Mmax 100
#define Nmax 100

int main()
{
	int M, N;
	int i, j, k, b = 0, min, t = 0;
	int A[Mmax][Nmax];
	int B[Nmax];

	scanf("%d %d", &M, &N);
	for (i = 0; i < M; i++)
	{
		for (j = 0; j < N; j++)
		{
			scanf("%d", &A[i][j]);
		}
	}
	for (i = 0; i < M; i++)
	{
		min = A[i][0];
		B[t] = 0;
		t++;
		for (j = 1; j < N; j++)
		{
			if (A[i][j] < min)
			{
				min = A[i][j];
				t = 0;
				B[t] = j;
				t++;
			}
			else if (A[i][j] == min)
			{
				B[t] = j;
				t++;
			}
		}
		for (k = 0; k < t; k++)
		{
			int y, l = 0;
			int x = B[k];
			for (y = 0; y < M; y++)
			{
				if (min < A[y][x])
				{
					l = 1;
				}
			}
			if (l == 0)
			{
				printf("(%d,%d,%d)", i + 1, x + 1, min);
				b = -1;
			}
		}
	}
	if (b != -1)
	{
		printf("NONE");
	}
}

运行结果:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1133725.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【软考系统架构设计师】2023年系统架构师冲刺模拟习题之《系统工程与信息系统基础》

本篇文章主要分享软考中系统工程与信息系统基础章节相关知识点。 系统工程与信息系统基础 [01] 霍尔三维结构以时间维、逻辑维、&#xff08;&#xff09;维组成的立体结构概括性地表示出系统工程的各阶段、各步骤以及所涉及的知识范围。其中时间维是系统的工作进程&#xff0…

OSATE 插件 Cheddar 的安装与简单使用

一、Cheddar简介 Cheddar是一个开源的实时系统任务调度模拟器/分析仪&#xff0c;可以使用Cheddar进行任务的可调度性分析以及相关的性能分析。对于Cheddar的详细信息可以参考其官网&#xff1a; Cheddar - open-source real-time scheduling simulator/analyzer (univ-brest…

JS加密/解密之手搓进阶版加密

前言 以前给大家介绍过一个简单的加密原理&#xff0c;是通过将字符串转换储层ascii码进行加密处理&#xff0c;这次介绍一个进阶版。解密难度直接上升了好几倍&#xff0c;加密代码放在下方各位自己尝试&#xff0c;解密代码就不贴了&#xff0c;感兴趣的可以到我的js加密官网…

Echarts的legend的特殊图例展示

问题描述 如图的红框中(上图是设计稿)&#xff0c;默认总发行和总到期都是矩形&#xff0c;即默认的情况下图例是25*14的&#xff0c;但是设计稿要求前两世正方形的。 问题复现&#xff1a; 默认的情况下&#xff0c;柱状图的图例是矩形(长方形),不是设计稿中的正方形。 演示…

什么是空运特殊货物_箱讯科技国际物流管理平台

空运货物具有时效快、安全性高等优势特点&#xff0c;但空运也有一定限制性。当然无论任何运输方式&#xff0c;运输对象都有这样的分类&#xff1a;普通货物、特殊货物。 那么在国际空运中&#xff0c;特殊货物是指什么呢&#xff1f; 01空运特殊货物 空运特殊货物是指那些无…

【网络协议】聊聊TCP的三挥四握

上一篇我们说了网络其实是不稳定的&#xff0c;TCP和UDP其实是两个不同的对立者&#xff0c;所以TCP为了保证数据在网络中传输的可靠性&#xff0c;从丢包、乱序、重传、拥塞等场景有自己的一套打法。 TCP格式 源端口和目标端口是不可缺少的&#xff0c;用以区分到达发送给拿…

生产环境元空间内存溢出(OOM)的问题排查

一、现象 2023.10.17下午收到业务反馈&#xff0c;说是接口调用超时&#xff0c;进件系统和核心系统调用外数系统接口时等待过久&#xff0c;引起系统异常。然后我们看了下接口调用的日志&#xff0c;确实接口的响应时间在五十秒左右。我们自己测试了下&#xff0c;发现也是这…

密码学-SHA-1算法

实验七 SHA-1 一、实验目的 熟悉SHA-1算法的运行过程&#xff0c;能够使用C语言编写实现SHA-1算法程序&#xff0c;增 加对摘要函数的理解。 二、实验要求 (1)理解SHA-1轮函数的定义和工作过程。 (2)利用VC语言实现SHA- 1算法。 (3)分析SHA- 1算法运行的性能。 三、实验…

统计文本词频的几种方法(Python)

目录 1. 单句的词频统计 2. 文章的词频统计 方法一&#xff1a;运用集合去重方法 方法二&#xff1a;运用字典统计 方法三&#xff1a;使用计数器 词频统计是自然语言处理的基本任务&#xff0c;针对一段句子、一篇文章或一组文章&#xff0c;统计文章中每个单词出现的次数…

HttpClient远程使用大全

一 HttpClient简介 1.1 概述 HttpClient只能以编程的方式通过其API用于传输和接受HTTP消息。主要实现功能&#xff1a; 实现了所有 HTTP 的方法&#xff08;GET、POST、PUT、HEAD、DELETE、HEAD、OPTIONS 等&#xff09; 支持 HTTPS 协议 支持代理服务器&#xff08;Nginx…

语法复习之C语言与指针

内存是如何存储数据的&#xff1f; 在C语言中定义一个变量后&#xff0c;系统就会为其分配内存空间。这个内存空间包括了地址和长度。将变量赋值后&#xff0c;该值就被写入到了指定的内存空间中。内存空间的大小一般以字节作为基本单位。   普通变量存放的是数据&#xff0c…

75 应急响应-数据库漏洞口令检索应急取证箱

必须知识点 1.第三方应用由于是选择性安装&#xff0c;如何做好信息收集和漏洞探针也是获取攻击者思路的重要操作&#xff0c;除去本身漏洞外&#xff0c;提前预知或口令相关攻击也要进行筛选 2.排除三方应用攻击行为&#xff0c;自查漏洞分析攻击者思路&#xff0c;人工配合工…

Qt 项目实战 | 多界面文本编辑器

Qt 项目实战 | 多界面文本编辑器 Qt 项目实战 | 多界面文本编辑器界面设计创建子窗口类实现菜单的功能更新菜单状态与新建文件操作实现打开文件操作添加子窗口列表实现其他菜单功能 完善程序功能保存窗口设置自定义右键菜单其他功能 小结项目源码 官方博客&#xff1a;https://…

初试Shiro

Shiro是一个用于身份验证、授权和会话管理的Java安全框架。它提供了一套易于使用的API&#xff0c;可以帮助开发人员构建安全性强大的应用程序。 环境准备 添加依赖 <dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-core</ar…

vueDay04——v-if else show

一、v-if的使用 我们可以像c语言一样去使用v-if结构 比如单用v-if&#xff0c;连用v-if v-else&#xff0c;或者是v-if v-else-if v-else 注意&#xff1a; 1.v-if v-else-if需要绑定值,而v-else不需要绑定值 2.if结构可以用在不同的标签类型之间 <div v-if"fir…

【MATLAB源码-第57期】基于matlab的IS95前向链路仿真,输出误码率曲线。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 IS-95&#xff0c;也被称为cdmaOne&#xff0c;是第一代的CDMA&#xff08;Code Division Multiple Access&#xff0c;码分多址&#xff09;数字蜂窝通信标准。IS-95的全称是Interim Standard-95&#xff0c;最初由Qualcomm…

灵活、可用、高扩展,EasyMR 带来全新 Yarn 的队列管理功能及可视化配置

YARN&#xff08;Yet Another Resource Negotiator&#xff09;是 Hadoop 生态系统中的资源调度器&#xff0c;主要用于资源管理和作业调度。YARN 自身具备队列管理功能&#xff0c;通过对 YARN 资源队列进行配置和管理&#xff0c;实现集群资源的分配&#xff0c;以满足不同应…

Doceker-compose——容器群集编排管理工具

目录 Docker-compose 1、Docker-compose 的三大概念 2、YAML文件格式及编写注意事项 1&#xff09;使用 YAML 时需要注意下面事项 2&#xff09;ymal文件格式 3&#xff09;json格式 3、Docker Compose配置常用字段 4、Docker-compose的四种重启策略 5、Docker Compos…

[微服务]Spring Cloud Sleuth全链路追踪

Spring Cloud Sleuth全链路追踪 全链路追踪组件追踪的数据遵循的规则: 1,Span:基本单元; 执行一次服务调用就生成一个span,用于记录当时的情况 ,以一个64位ID作为唯一标识.span还有其他数据标识如摘要,时间戳信息,关键tag等; 2,Trace:一次请求; 以一个64位ID为唯一标识,可以…

各品牌PLC存储器寻址的规则

在PLC编程时&#xff0c;字节或多字节的变量一般支持绝对地址寻址&#xff08;比如&#xff0c;IW0、MD4等&#xff09;。要想正确寻址&#xff0c;则必须要搞清楚寻址的规则。目前常见的规则有两种&#xff1a;字节寻址和字寻址。下图清晰地表达了两种规则的编号情况&#xff…