Trang chủ Tin Học Lớp 12 PTYN - Phần tử yên ngựaDữ liệu vào: standard inputDữ...

PTYN - Phần tử yên ngựaDữ liệu vào: standard inputDữ liệu ra: standard outputGiới hạn thời gian: 1.0 giâyGiới hạn bộ nhớ: 128 megabyteĐăng bởi: MrThaodaica Cho

Câu hỏi :

PTYN - Phần tử yên ngựaDữ liệu vào: standard inputDữ liệu ra: standard outputGiới hạn thời gian: 1.0 giâyGiới hạn bộ nhớ: 128 megabyteĐăng bởi: MrThaodaica

Cho mảng 2 chiều A có kích thước MxN số nguyên. Phần tử A[i,j] được gọi là phần tử yên ngựa nếu nó là phần tử nhỏ nhất trong hàng i đồng thời là phần tử lớn nhất trong cột j.

        Em hãy lập chương trình tìm phần tử yên ngựa của mảng A.

        Dữ liệu vào: cho file PTYN.INP gồm:-        Dòng đầu tiên  gồm 2 số M, N (0 ≤ M,N ≤100)-        M dòng tiếp theo, mỗi dòng gồm có N số nguyên của mảng A(các giá trị cách nhau ít nhất 1 khoảng cách).        Dữ liệu ra: ghi ra file PTYN.OUT vị trí của các phần tử yên ngựa (nếu có) hoặc in ra -1.Ví dụ

  • input3 3
    15 3 9
    55 4 6
    76 1 2output(2,2); 
  • NGÔN NGỮ PASCAL Ạ
  • HƠI KHÓ
  • MONG MẤY ANH LÀM GIÚP

Lời giải 1 :

uses crt;
var m,n,i,j,k: Integer;
a:array [0..100,0..100] of Integer;
ok,kt: Boolean;
begin
clrscr;
readln(m,n);
for i:=0 to m-1 do
for j:=0 to n-1 do
Read(a[i, j]);
ok:=False;
for i:=0 to m-1 do
begin
for j:=0 to n-1 do
begin
kt:=True;
for k:=0 to n-1 do
begin
if a[i,j]>a[i,k] then
begin
kt:=False;
Break;
end;
end;
if kt then
begin
for k:=0 to m-1 do
begin
if a[i,j]<a[k,j] then
begin
kt:=False;
Break;
end;
end;
end;
if kt then
begin
WriteLn('(',i+1,',',j+1,')');
ok:= True;
end;
end;
end;
if not ok then
Writeln('ko co phan tu yen ngua nao');
readln;
readln;
end.

image
image

Lời giải 2 :

def find_min_in_row(arr, row_idx):
    return min(arr[row_idx])

def find_max_in_col(arr, col_idx):
    return max([arr[i][col_idx] for i in range(len(arr))])

def find_stable_elements(arr):
    stable_elements = []
    for i in range(len(arr)):
        for j in range(len(arr[0])):
            if arr[i][j] == find_min_in_row(arr, i) and arr[i][j] == find_max_in_col(arr, j):
                stable_elements.append((i, j))
    return stable_elements

def main():
    with open('PTYN.INP') as f:
        m, n = map(int, f.readline().split())
        matrix = [list(map(int, f.readline().split())) for _ in range(m)]

    stable_elements = find_stable_elements(matrix)

    with open('PTYN.OUT', 'w') as f:
        if stable_elements:
            f.write(";".join([f'({i},{j})' for i, j in stable_elements]))
        else:
            f.write("-1")

if __name__ == "__main__":
    main()

Bạn có biết?

Tin học là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng. Tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin. Hãy tận dụng sức mạnh của tin học để giải quyết các vấn đề và sáng tạo ra những giải pháp mới!

Nguồn :

Wikipedia - Bách khoa toàn thư

Tâm sự lớp 12

Lớp 12 - Năm cuối ở cấp trung học phổ thông, năm học quan trọng nhất trong đời học sinh, trải qua bao năm học tập, bao nhiêu kỳ vọng của người thân xung quanh. Những nỗi lo về thi đại học và định hướng tương lai thật là nặng nề. Hãy tin vào bản thân, mình sẽ làm được và tương lai mới đang chờ đợi chúng ta!

Nguồn :

sưu tập

Liên hệ hợp tác hoặc quảng cáo: gmail

Điều khoản dịch vụ

Copyright © 2021 HOCTAPSGK