当前位置:网站首页>7-6 local minimum of matrix (PTA program design)
7-6 local minimum of matrix (PTA program design)
2022-07-06 13:56:00 【Programming Lindaiyu】
Given M That's ok N The integer matrix of columns A, among 3≤M,N≤10, If A The non boundary elements of A[i][j] Smaller than the adjacent upper, lower, left and right 4 Elements , So it's called the element A[i][j] Is the local minimum of the matrix . It is required to write a program to output all local minima of a given matrix and their positions . Each line follows “ Element value Line number Column number ” Output a local minimum in the format of , One line 、 Column number from 1 Start . The output is required to be incremented according to the line number ; If there are more than 1 A local minimum , Then the row is incremented by the column number . If there is no local minimum , The output “None”.
Input format :
First enter the number of rows of the matrix in the first row M And number of columns N, Then enter the integer matrix from the second line A All elements of .
Output format :
Output all local minima of a given matrix and their positions according to the requirements of the topic .
sample input :
Here's a set of inputs . for example :
4 5
9 9 9 9 9
9 3 9 5 9
9 5 3 5 9
9 9 9 9 9
sample output :
Here is the corresponding output . for example :
3 2 2
3 3 3
Code (Python):
m,n=map(int,input().split()) # Enter the number of lines m And number of columns n
list1=[] #list1 Used to store matrix
count=0 # Used to record several qualified values
for i in range(m): # Pay attention to the input method of two-dimensional array
s = input() # Line by line input
list1.append([int(n) for n in s.split()]) # Separate the numbers on each line with spaces ,split() The return value of the function is a list , That is, each line is treated as an element , After casting , Add to list1 in
for i in range(1,m-1): # Traverse every internal element of the matrix
for j in range(1,n-1):
if list1[i][j]<list1[i-1][j] and list1[i][j]<list1[i][j-1] and list1[i][j]<list1[i+1][j] and list1[i][j]<list1[i][j+1]: # Judge whether it is smaller than its upper, lower, left and right 4 Elements
print(list1[i][j],i+1,j+1) # If it is less than up, down, left and right 4 One element , Is the local minimum of the matrix , Neglect the local minimum and its position , Because the list is from 0 Start , The rows and columns of the matrix are from 1 Start , So add 1
count=1 # For the convenience of judging whether there is a qualified value
if count==0: #count=0 Indicates that there is no qualified value
print("None") # If not, output None
The above program gives more detailed comments , For novice Xiaobai's reference . The idea of program design or code implementation is not optimal , You are welcome to correct your mistakes or give better ideas .
I am a rookie who wants to be Kunpeng , Everyone's encouragement is my driving force , Welcome to like collection comments !
边栏推荐
- [VMware abnormal problems] problem analysis & Solutions
- 强化学习系列(一):基本原理和概念
- 一段用蜂鸣器编的音乐(成都)
- Get started with typescript
- Renforcer les dossiers de base de l'apprentissage
- (原创)制作一个采用 LCD1602 显示的电子钟,在 LCD 上显示当前的时间。显示格式为“时时:分分:秒秒”。设有 4 个功能键k1~k4,功能如下:(1)k1——进入时间修改。
- MySQL lock summary (comprehensive and concise + graphic explanation)
- . Net6: develop modern 3D industrial software based on WPF (2)
- 扑克牌游戏程序——人机对抗
- Wechat applet
猜你喜欢
甲、乙机之间采用方式 1 双向串行通信,具体要求如下: (1)甲机的 k1 按键可通过串行口控制乙机的 LEDI 点亮、LED2 灭,甲机的 k2 按键控制 乙机的 LED1
2022泰迪杯数据挖掘挑战赛C题思路及赛后总结
Using spacedesk to realize any device in the LAN as a computer expansion screen
Experiment 6 inheritance and polymorphism
Canvas foundation 2 - arc - draw arc
Differences among fianl, finally, and finalize
Have you encountered ABA problems? Let's talk about the following in detail, how to avoid ABA problems
Leetcode. 3. Longest substring without repeated characters - more than 100% solution
Strengthen basic learning records
2022 Teddy cup data mining challenge question C idea and post game summary
随机推荐
仿牛客技术博客项目常见问题及解答(三)
Custom RPC project - frequently asked questions and explanations (Registration Center)
QT meta object qmetaobject indexofslot and other functions to obtain class methods attention
[the Nine Yang Manual] 2018 Fudan University Applied Statistics real problem + analysis
This time, thoroughly understand the MySQL index
【头歌educoder数据表中数据的插入、修改和删除】
[data processing of numpy and pytoch]
String ABC = new string ("ABC"), how many objects are created
The difference between overloading and rewriting
一段用蜂鸣器编的音乐(成都)
(original) make an electronic clock with LCD1602 display to display the current time on the LCD. The display format is "hour: minute: Second: second". There are four function keys K1 ~ K4, and the fun
[insert, modify and delete data in the headsong educator data table]
简述xhr -xhr的基本使用
仿牛客技术博客项目常见问题及解答(二)
Experiment 7 use of common classes
MySQL lock summary (comprehensive and concise + graphic explanation)
.Xmind文件如何上传金山文档共享在线编辑?
Zatan 0516
[MySQL database learning]
Miscellaneous talk on May 27