Thuật Toán Tìm Phần Tử "Yên Ngựa" Trong Ma Trận - GÓC HỌC TẬP

Breaking News Loading... Saturday, June 29, 2013 Home » Ma trận » Thuật toán tìm phần tử "Yên Ngựa" trong ma trận Thuật toán tìm phần tử "Yên Ngựa" trong ma trận Việt Trương 6/29/2013 10:53:00 PM Ma trận

Một phần tử được gọi là Yên Ngựa khi và chỉ khi nó lớn nhất trên dòng và nhỏ nhất trên cột hoặc lớn nhất trên cột và nhỏ nhất trên dòng

Lưu ý: Code này mình viết trên DEV C++ , dữ liệu đọc từ file "SADDLE.INP" và xuất ra file "SADDLE.OUT". Nếu bạn viết trên Visual studio thì bạn thay đổi lại thư viện và cách nhập xuất là Ok. Quan trọng là thuật toán xử lý thôiCode:

#include <cstdlib> #include <iostream> #include <fstream> #define fni "SADDLE.INP" #define fno "SADDLE.OUT" using namespace std; int a[100][100],b[100][2],c[2][100] ,n,m,d=0,vmax,vmin; void doc() { ifstream ifi(fni); ifi>>n; ifi>>m; for (int i=0;i<n;i++) { vmax=vmin=0; for (int j=0;j<m;j++) { ifi>>a[i][j]; if(a[i][j]>a[i][vmax]) vmax=j; if(a[i][j]<a[i][vmin]) vmin=j; } b[i][0]=a[i][vmin]; b[i][1]=a[i][vmax]; } ifi.close(); } void maxmincot() { for (int j=0;j<m;j++) { vmax=vmin=0; for (int i=0;i<n;i++) { if(a[i][j]>a[vmax][j]) vmax=i; if(a[i][j]<a[vmin][j]) vmin=i; } c[0][j]=a[vmin][j]; c[1][j]=a[vmax][j]; } } void xuat() { maxmincot(); ofstream ofo(fno); for(int i=0;i<n;i++) for(int j=0;j<m;j++) if((a[i][j]==b[i][0] && b[i][0]==c[1][j]) || (a[i][j]==b[i][1] && b[i][1]==c[0][j])) d++; ofo<<d; ofo.close(); } int main(int argc, char *argv[]) { doc(); xuat(); return EXIT_SUCCESS; } Share: Newer Post Older Post

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom) Powered by Blogger.
  • Popular
  • Fanpage
  • Comments
  • Archive

Popular Posts

  • Tổng hợp Bài Tập Về Mảng Một Chiều Nhập xuất mảng 1 chiều bằng đệ quy File khaibao.h #include<iostream> using namespace std; void NhapMang(int a[],int n); void...
  • Tổng hợp Bài Tập Đệ Quy 1/ In đảo ngược số n nguyên dương void InDaoNguoc(int n) {     if(n!=0) { cout<<n%10; InDaoNguoc(n/10); } } 2/ Đếm ...
  • Tổng hợp code các hàm về Mảng 2 Chiều PHẦN 1: Các câu lệnh duyệt mảng 2 chiều thường gặp     *Ghi chú: n là số dòng, m là số cột -Nhập mảng f or ( int i=0;i<n;i++) fo...
  • BÀI NHẬP XUẤT DANH SÁCH THÔNG TIN SINH VIÊN( MÔN CTDL &TT TUẦN 5) Click Vào Đây Để Dowload
  • Tổng Hợp Các Bài Tập Kiểu Chuỗi Đếm có bao nhiêu khoảng trắng trong chuỗi. Nhập vào một chuỗi, hãy loại bỏ những khoảng trắng thừa trong chuỗi. Nhập vào hai chuỗi s...
Bình luận mới nhất

Blog Archive

  • ▼  2013 (308)
    • ▼  June (12)
      • [Đồ án] Phần mềm order thức ăn trên Windows Phone
      • Thuật toán tìm phần tử "Yên Ngựa" trong ma trận
      • Thuật toán tìm phần tử "Hoàng hậu" trong ma trận
      • Code Backup và Restore database SQL bằng C#
      • Bài giảng lập trình mạng trên C#
      • Các kiểu định dạng ngày trong SQL
      • Tài liệu học WPF (Windows Presentation Foundation)...
      • Bài giảng về xây dựng phần mềm hướng đối tượng và ...
      • Ebook hướng dẫn về Oracle và PL/SQL
      • [Đồ án] Web PHP tin tức trên framework codeigniter
      • Ebook hướng dẫn lập trình PHP & MySQL cho người mớ...
      • [Đồ án] Tìm hiểu về Windows Azure

Tổng lượt xem

  Toggle Footer

Từ khóa » Tìm Phần Tử Yên Ngựa