Ma Trận Xoắn ốc - Programming - Dạy Nhau Học
Có thể bạn quan tâm
Ý tưởng cho bài này là nạp số theo vòng đầu của ma trận mxn, nạp hết vòng đầu thì coi việc nạp vòng bên trong là nạp vòng của ma trận (m-i)x(n-i). nạp số theo vòng có 4 trường hợp: TH1: nạp từ trái sang phải TH2: nạp từ trên xuống TH3 nạp từ phải sang trái TH4: nạp từ dưới lên Để biết nạp theo trường hợp nào thì ta cho các cạnh phải r, trái l, trên t, dưới b. r=0; mt[i][j]=++r; TH1: i==t, j<r => j++ TH2: j==r; i<b => i++ TH3: i==b;j>l => j– TH4 j==l; i>t => i–
#include <iostream>int r=0; int main(){ int m,n; std::cin>>m>>n; int mt[m][n]; int k=0; int i=0,j=0; int l=0,t=0,r=n,b=m; int flag=1;
while (k!=m*n){ mt[i][j]=++k; if (flag==1) { if (j!=r-1) j++; else { flag=2; i++; r--; } } else if (flag==2){ if (i!=b-1) i++; else { flag=3; j--; b--; } } else if (flag==3){ if (j!=l) j--; else { flag=4; i--; l++; } } else { if (i!=t+1) i--; else { flag=1; j++; i=++t; } } } for (int i=0;i<m;i++){ for (int j=0;j<n;j++) std::cout<<mt[i][j]<<" "; std::cout<<std::endl; } system("pause"); return 0;}
Từ khóa » Thuật Toán Ma Trận Xoắn ốc
-
Thuật Toán Ma Trận Xoắn ốc? - Tạo Website
-
Bài Tập C - Ma Trận Xoắn ốc Vuông Cấp N - YouTube
-
C - Bài Tập: Vẽ Ma Trận Xoắn ốc - YouTube
-
30 [Bài Tập C ( Mảng)]. Ma Trận Xoáy Ốc - YouTube
-
In Ma Trận M X N Dạng Xoắn ốc - Programming - Dạy Nhau Học
-
Ma Trận Xoắn ốc - Coder Dưa Hấu
-
Giải Pháp Leetcode Ma Trận Xoắn ốc II - TutorialCup
-
RSPRIAL - Ma Trận Xoắn ốc 2 - Luyện Code
-
Thuật Toán Sắp Xếp Xoắn ốc Mảng Hai Chiều - Minh Họa Bằng Pascal
-
Sắp Xếp Mảng 2 Chiều Tăng Dần Theo Hình Xoắn ốc Trong C/C++?
-
Giải Pháp Mã LeetCode Ma Trận Xoắn ốc - TutorialCup
-
Bài 5 – Ma Trận Xoắn ốc | Hunglee's Blog