n*n의 2차원 배열이 주어지고 주어진 행렬의 역나선 배열을 찾는 작업
Input : arr[4][4]={1,2,3,4, 5,6,7,8, 9,10,11,12 13,14,15,16} Output : 1 6 11 16 4 7 10 13
알고리즘
START Step 1 -> declare start variables as r=4, c=4, i and j Step 2 -> initialize array as mat[r][c] with elements Step 3 -> Loop For i=0 and i<r and i++ Print mat[i][j] Step 4 -> print \n Step 5 -> Loop For i=0 and i<r and i++ Print mat[i][4-1-i] End STOP
예
#include<iostream> #include <bits/stdc++.h> using namespace std; int main() { int R=4,C=4,i,j; int mat[R][C] = { {1,2,3, 4}, {5,6,7,8},{9,10,11,12},{13,14,15,16}}; for(i=0;i<R;i++) { cout<<mat[i][i]<<" "; } cout<<"\n"; for(i=0;i<R;i++) { cout<<mat[i][4-1-i]<<" "; } }
출력
위의 프로그램을 실행하면 다음 출력이 생성됩니다.
1 6 11 16 4 7 10 13