Tin học Tây Sơn

Phần tử yên ngựa

Go down

Phần tử yên ngựa

Bài gửi by Admin on Thu Nov 29, 2018 8:34 pm

Cho bảng A kích thước MxN. Phần tử Aij được gọi là phần tử yên ngựa nếu nó là phần tử nhỏ nhất trong hàng của nó đồng thời là phần tử lớn nhất trong cột của nó. Ví dụ trong bảng số sau đây:
15        3          9
55        4          6
76        1          2
thì phần tử A22 chính là phần tử yên ngựa.
Bạn hãy lập chương trình tìm phần tử yên ngựa trong tệp yenngua.inp:
Tệp yenngua.inp: dòng đầu chứa 2 số m,n. m hàng tiếp theo mỗi hàng chứa n số.
Tệp yenngua.out: chứa vị trí chỉ số hàng và chỉ số cột của phần tử yên ngựa; (2,2)
                                 Yenngua.inp
Yenngua.out
15 3 9
55 4 6
76 1 2
 
2 2
avatar
Admin
Admin
Admin

Posts : 658
Reputation : -39
Join date : 16/11/2015
Age : 29

Xem lý lịch thành viên http://tinhocts.forumvi.com

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by Nguyễn Văn Biên on Thu Nov 29, 2018 9:28 pm

Admin đã viết:
                                 Yenngua.inp
Yenngua.out
15 3 9
55 4 6
76 1 2
 
2 2
m và n đâu rồi thầy?
avatar
Nguyễn Văn Biên
S-mod
S-mod

Posts : 186
Reputation : 21
Join date : 18/06/2018
Age : 14
Location : ?

Xem lý lịch thành viên https://bien2004official.blogspot.com

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by Nguyễn Văn Biên on Thu Nov 29, 2018 9:40 pm

Spoiler:
Code:
program yenngua;
var fi,fo:text;
    n,m,h,k,i,j:integer;
    A:array[1..1000,1..1000]of integer;

function minhang(h:integer):integer;
var j:integer;
begin
        minhang:=a[h,1];
        for j:=1 to n do
        if minhang>a[h,j] then minhang:=a[h,j]
end;

function maxcot(j:integer):integer;
var i:integer;
begin
        maxcot:=a[1,j];
        for i:=1 to m do
        if maxcot<a[i,j] then maxcot:=a[i,j]
end;

begin
        assign(fi,'yenngua.inp'); reset(fi);
        readln(fi,m,n);
        for i:=1 to m do
        begin
                for j:=1 to n do read(fi,a[i,j]);
                readln(fi)
        end;
        close(fi);
        assign(fo,'yenngua.out'); rewrite(fo);
        for h:=1 to m do
        for k:=1 to n do
        if minhang(h)=maxcot(k) then writeln(fo,h,#32,k);
        close(fo)
end.
avatar
Nguyễn Văn Biên
S-mod
S-mod

Posts : 186
Reputation : 21
Join date : 18/06/2018
Age : 14
Location : ?

Xem lý lịch thành viên https://bien2004official.blogspot.com

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by tonguyengiahan237 on Thu Nov 29, 2018 11:12 pm

Code:
Program Yen_ngua;
Uses crt;
Type mang2c=array[1..50,1..50] of integer;
Var A:mang2c;
    m,n,i,j:integer;
    fi,fo:text;

Procedure Docdl(Var A:mang2c;Var m,n:integer;Var fi:text);
Var i,j:integer;
Begin
Assign(fi,'yenngua.inp');
Reset(fi);
Read(fi,m,n);
        For i:=1 to m do
        For j:=1 to n do
                begin
                Read(fi,A[i,j]);
                If j=n then readln(fi);
                end;
                Writeln;
Close(fi);
End;

Function Nhonhat(A:mang2c;i:integer):integer;
Var Min,j:integer;
Begin
Min:=A[i,1];
For j:=1 to n do
If A[i,j]<Min then
        begin
        Min:=A[i,j];
        end;
Nhonhat:=Min;
End;

Function Lonnhat(A:mang2c;j:integer):integer;
Var Max,i:integer;
Begin
Max:=A[1,j];
For i:=1 to m do
If A[i,j]>Max then
        begin
        Max:=A[i,j];
        end;
Lonnhat:=Max;
End;


BEGIN
CLRSCR;
Docdl(A,m,n,fi);
Assign(fo,'yenngua.out');
Rewrite(fo);
For i:=1 to m do
For j:=1 to n do
If Nhonhat(A,i)=Lonnhat(A,j) then
        begin
        write(fo,i,' ',j);
        end;
Close(fo);
READLN;
END.
avatar
tonguyengiahan237
Teen Chính hiệu
Teen Chính hiệu

Posts : 28
Reputation : -2
Join date : 06/11/2018
Age : 14
Location : TT Phú Phong Huyện Tây Sơn Tỉnh Bình Định

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by huynhtanluc on Fri Nov 30, 2018 10:37 pm

Code:
Program bt;
uses crt;
type mang=array[1..100,1..100] of integer;
var n,m,i,j:integer;a:mang;t1,t2:text;

Procedure doc;
begin
assign(t1,'yenngua.inp');
reset(t1);
readln(t1,m,n);
for i:=1 to m do
begin
for j:=1 to n do read(t1,a[i,j]);
readln(t1);
end;
close(t1);
end;

Function min(i:integer):integer;
var j:integer;
begin
min:=a[i,1];
for j:=1 to n do
if min>a[i,j] then min:=a[i,j];
end;

Function max(j:integer):integer;
var i:integer;
begin
max:=a[1,j];
for i:=1 to m do
if max<a[i,j] then max:=a[i,j];
end;

Procedure xuli;
begin
assign(t2,'yenngua.out');
rewrite(t2);
for i:=1 to m do
for j:=1 to n do
if min(i)=max(j) then writeln(t2,i,#32,j);
close(t2);
end;

Begin
clrscr;
doc;
xuli;
readln;
End.
avatar
huynhtanluc
Năng động
Năng động

Posts : 61
Reputation : -14
Join date : 18/06/2018

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by nguyen77 on Sat Dec 01, 2018 4:38 am

Code:
program bt;
uses crt;
var fi,fo:text;
    n,m,i,j,x,y,dem:longint;
    A:array[1..1000,1..1000]of longint;

//--------------------------------

function max(y:longint):longint;
var i:integer;
begin
        max:=a[1,y];
        for i:=1 to m do
        if max<a[i,y] then
                max:=a[i,y]
end;

//--------------------------------
function min(x:longint):longint;
var j:integer;
begin
        min:=a[x,1];
        for i:=1 to n do
        if min>a[x,i] then min:=a[x,i]
end;
//------------------------------


begin
clrscr;
assign(fi,'yenngua.inp'); reset(fi);
readln(fi,m,n);
for i:=1 to m do
        begin
                for j:=1 to n do
                        read(fi,a[i,j]);
                readln(fi)
        end;
close(fi);
assign(fo,'yenngua.out');
rewrite(fo);
for x:=1 to m do
        for y:=1 to n do
                if min(x)=max(y) then
                        begin
                        writeln(fo,x,' ',y);
                        inc(dem);
                        end;
        if dem=0 then
                write(fo,'ko co ');
        close(fo);

readln;
end.


Được sửa bởi nguyen77 ngày Sat Dec 08, 2018 2:03 pm; sửa lần 1.
avatar
nguyen77
Năng động
Năng động

Posts : 68
Reputation : -22
Join date : 18/06/2018

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by Cao Hải Dương on Sat Dec 01, 2018 12:06 pm

Code:
Program yen_ngua;
Uses crt;
Var fi,fo:text; i,j,n,m,x,y:longint;
a:array[1..1000,1..1000]of longint;

Function max(y:longint):longint;
Var i:integer;
Begin
max:=a[1,y];
For i:=1 to n do
If max<a[i,y] then max:=a[i,y]
End;

Function min(x:longint):longint;
Var j:integer;
Begin
min:=a[x,1];
For i:=1 to m do
If min>a[x,i] then min:=a[x,i]
End;

Begin
Clrscr;
Assign(fi,'yenngua.inp'); Reset(fi);
Readln(fi,n,m);
For i:=1 to n do
       Begin
       For j:=1 to m do Read(fi,a[i,j]);
       Readln(fi)
       End;
Close(fi);
Assign(fo,'yenngua.out'); Rewrite(fo);
For x:=1 to n do
For y:=1 to m do
If min(x)=max(y) then writeln(fo,x,' ',y);
Close(fo);
Readln;
End.
avatar
Cao Hải Dương
Năng động
Năng động

Posts : 56
Reputation : -1
Join date : 18/06/2018
Age : 14
Location : Bình Định

Xem lý lịch thành viên http://starduongdesign.blogspot.com

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by thanhtruc on Sat Dec 01, 2018 12:25 pm

Code:
Program Yen_ngua;
Uses crt;
Type mang2c=array[1..50,1..50] of integer;
Var A:mang2c;
    m,n,i,j:integer;
    fi,fo:text;

Function Min(A:mang2c;i:integer):integer;
Var j:integer;
Begin
Min:=A[i,1];
For j:=1 to n do
If A[i,j]<Min then
Min:=A[i,j];
end;

Function Max(A:mang2c;j:integer):integer;
Var i:integer;
Begin
Max:=A[1,j];
For i:=1 to m do
If A[i,j]>Max then
Max:=A[i,j];
End;

BEGIN
clrscr;
Assign(fi,'yenngua.inp');
Reset(fi);
Readln(fi,m,n);
For i:=1 to m do
begin
For j:=1 to n do
Read(fi,A[i,j]);
readln(fi);
end;
close(fi);
Assign(fo,'yenngua.out');
Rewrite(fo);
For i:=1 to m do
For j:=1 to n do
If Min(A,i)=Max(A,j) then
writeln(fo,i,' ',j);
Close(fo);
readln;
END.
avatar
thanhtruc
Nhiệt tình
Nhiệt tình

Posts : 43
Reputation : -7
Join date : 25/06/2018
Age : 14
Location : TNPPTSBĐ

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by mainhatthong2004 on Sat Dec 01, 2018 1:35 pm

Code:
program bt;
uses crt;
var fi,fo:text;
    n,m,i,j,x,y,d:longint;
    A:array[1..1000,1..1000]of longint;

//--------------------------------

function max(y:longint):longint;
var i:integer;
begin
        max:=a[1,y];
        for i:=1 to m do
        if max<a[i,y] then
                max:=a[i,y]
end;

//--------------------------------
function min(x:longint):longint;
var j:integer;
begin
        min:=a[x,1];
        for i:=1 to n do
        if min>a[x,i] then min:=a[x,i]
end;
//------------------------------


begin
clrscr;
assign(fi,'yenngua.inp'); reset(fi);
readln(fi,m,n);
for i:=1 to m do
        begin
                for j:=1 to n do
                        read(fi,a[i,j]);
                readln(fi)
        end;
close(fi);
assign(fo,'yenngua.out');
rewrite(fo);
for x:=1 to m do
        for y:=1 to n do
                if min(x)=max(y) then
                        begin
                                      writeln(fo,x,' ',y);
                                      inc(d);
                        end;
if d=0 then write(fo,'ko co ');
        close(fo);
readln;
end.


Được sửa bởi mainhatthong2004 ngày Sat Dec 08, 2018 2:09 pm; sửa lần 1.
avatar
mainhatthong2004
Teen cá tính
Teen cá tính

Posts : 76
Reputation : -25
Join date : 18/06/2018

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by lohan on Sat Dec 01, 2018 1:52 pm

Code:
PROGRAM YEN_NGUA;
uses crt;
type mang=array[1..100,1..100] of integer;
Var A:mang;
    m,n,i,j:integer;
    fi,fo:text;
function Min(A:mang;i:integer):integer;
var j:integer;
begin
Min:=A[i,1];
for j:=1 to n do
If A[i,j]<Min then
        begin
        Min:=A[i,j];
        end;
End;
function Max(A:mang;j:integer):integer;
var i:integer;
begin
Max:=A[1,j];
for i:=1 to m do
if A[i,j]>Max then
        begin
        Max:=A[i,j];
        end;
End;

Begin
Assign(fi,'yenngua.inp');
Reset(fi);
Read(fi,m,n);
For i:=1 to m do
For j:=1 to n do
begin
Read(fi,A[i,j]);
end;
Writeln;
Close(fi);
Assign(fo,'yenngua.out');
Rewrite(fo);
For i:=1 to m do
For j:=1 to n do
If Min(A,i)=Max(A,j) then
        begin
        write(fo,i,' ',j);
        end;
Close(fo);
READLN;
END.
avatar
lohan
Teen Chính hiệu
Teen Chính hiệu

Posts : 20
Reputation : -3
Join date : 06/11/2018
Age : 14

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by Tạ Thúy Phượng on Sat Dec 01, 2018 1:53 pm

CODE:
uses crt;
type
mang2c=array[1..50,1..50]of integer;
var
a,b:mang2c;
fi,fo:text;
m,n,i,j,h,c:integer;
//------------------------------------------
procedure Nhap;
begin
assign(fi,'YENNGUA.INP');
reset(fi);
read(fi,n,m);
for i:=1 to n do
begin
for j:=1 to m do
read(fi,a[i,j]);
end;
close(fi);
end;
//---------------------------------------
function minhang(a:mang2c;n,h:integer):integer;
var
j:integer;
begin
minhang:=a[h,1];
for j:=2 to n do
if a[h,j]<minhang then
minhang:=a[h,j];
end;
//-----------------------------------------
function maxcot(a:mang2c;m,c:integer):integer;
var
i:integer;
begin
maxcot:=a[1,c];
for i:=2 to m do
if a[i,c] >maxcot then
maxcot:=a[i,c];
end;
//--------------------------------------------
procedure yenngua;
begin
assign(fo,'YENNGUA.OUT');
rewrite(fo);
for h:=1 to n do
for c:=1 to m do
if minhang(a,n,h)=maxcot(a,m,c) then
writeln(fo,'(',h,',',c,')');
close(fo);
end;
//--------------------------------------
begin
clrscr;
Nhap;
yenngua;
readln;
end.
avatar
Tạ Thúy Phượng
Năng động
Năng động

Posts : 63
Reputation : -19
Join date : 18/06/2018
Location : Binh Thuan-Tay Son-Binh Dinh

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by Nguyễn Hoàng Nam on Sat Dec 01, 2018 1:59 pm

Code:
PROGRAM ptyn;
uses crt;
type mang=array[1..100,1..100] of integer;
Var A:mang;
    m,n,i,j:integer;
    fi,fo:text;
function Min(A:mang;i:integer):integer;
var j:integer;
begin
Min:=A[i,1];
for j:=1 to n do
If A[i,j]<Min then
        begin
        Min:=A[i,j];
        end;
End;
function Max(A:mang;j:integer):integer;
var i:integer;
begin
Max:=A[1,j];
for i:=1 to m do
if A[i,j]>Max then
        begin
        Max:=A[i,j];
        end;
End;

Begin
Assign(fi,'yenngua.inp');
Reset(fi);
Read(fi,m,n);
For i:=1 to m do
For j:=1 to n do
begin
Read(fi,A[i,j]);
end;
Writeln;
Close(fi);
Assign(fo,'yenngua.out');
Rewrite(fo);
For i:=1 to m do
For j:=1 to n do
If Min(A,i)=Max(A,j) then
        begin
        write(fo,i,' ',j);
        end;
Close(fo);
READLN;
end.
avatar
Nguyễn Hoàng Nam
Teen Chính hiệu
Teen Chính hiệu

Posts : 16
Reputation : -2
Join date : 06/11/2018
Age : 14

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by nganvonhat123 on Sat Dec 01, 2018 2:08 pm

Code:
Program bt;
uses crt;
type mang=array[1..100,1..100] of integer;
var n,m,i,j:integer;a:mang;fi,fo:text;

Procedure nhap;
begin
        assign(fi,'yenngua.inp');
        reset(fi);
        readln(fi,m,n);
        for i:=1 to m do
        begin
                for j:=1 to n do read(fi,a[i,j]);
                readln(fi);
        end;
        close(fi);
end;

Function snn(i:integer):integer;
        var j:integer;
begin
        snn:=a[i,1];
        for j:=1 to n do
                if snn>a[i,j] then snn:=a[i,j];
end;

Function sln(j:integer):integer;
        var i:integer;
begin
        sln:=a[1,j];
        for i:=1 to m do
                if sln<a[i,j] then sln:=a[i,j];
end;

Procedure tim;
begin
        assign(fo,'yenngua.out');
        rewrite(fo);
        for i:=1 to m do
                for j:=1 to n do
                        if snn(i)=sln(j) then writeln(fo,i,#32,j);
        close(fo);
end;

Begin
clrscr;
nhap;
tim;
readln;
End.
avatar
nganvonhat123
Begin
Begin

Posts : 9
Reputation : -2
Join date : 24/11/2018
Age : 14

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by quantran on Sat Dec 01, 2018 4:49 pm

code:
uses crt;
type
       mang2c=array[1..50,1..50]of integer;
var
       a,b:mang2c;
       fi,fo:text;
       m,n,i,j,h,c:integer;
//________________________________________________
procedure Nhap;
begin
assign(fi,'yenngua.INP');
reset(fi);
readln(fi,n,m);
for i:=1 to n do
       begin
       for j:=1 to m do
       read(fi,a[i,j]);
       end;
close(fi);
end;
//_____________________________________
function minhang(a:mang2c;n,h:integer):integer;
var
       j:integer;
begin
minhang:=a[h,1];
for j:=2 to n do
       if a[h,j]<minhang then
       minhang:=a[h,j];
end;
//-----------------------------------------
function maxcot(a:mang2c;m,c:integer):integer;
var
       i:integer;
begin
maxcot:=a[1,c];
for i:=2 to m do
       if a[i,c] >maxcot then
       maxcot:=a[i,c];
end;

//--------------------------------------------
procedure yenngua;
begin
assign(fo,'YENNGUA.OUT');
rewrite(fo);
for h:=1 to n do
       for c:=1 to m do
       if minhang(a,n,h)=maxcot(a,m,c) then
       writeln(fo,'(',h,',',c,')');
close(fo);
end;
//--------------------------------------
begin
clrscr;
Nhap;
yenngua;
readln;
end.
avatar
quantran
Teen cá tính
Teen cá tính

Posts : 73
Reputation : -20
Join date : 18/06/2018
Age : 14
Location : Binh Thuan-Tay Son-Binh Dinh

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Phần tử yên ngựa

Bài gửi by Sponsored content


Sponsored content


Về Đầu Trang Go down

Về Đầu Trang


 
Permissions in this forum:
Bạn không có quyền trả lời bài viết