程式碼如下:
#include<bits/stdc++.h>
using namespace std;
int main(){
int R,C,M;
cin>>R>>C>>M;
int tmp;
if (R>C)tmp = R;
else tmp=C;
int arr[tmp][tmp];
int narr[tmp][tmp];
for(int i=0;i<R;i++){
for(int j=0;j<C;j++){
cin>>arr[i][j];
}
}
int K[M];
//0旋轉i=C-1-j,j=i 1翻轉i=R-1-i,j=j
for(int i=M-1;i>=0;i--){
cin>>K[i];
if(K[i] == 0){
for(int i=0;i<R;i++){
for(int j=0;j<C;j++){
narr[C-1-j][i]=arr[i][j];
}
}
swap(R,C);
for(int i=0; i<R; i++){
for(int j=0; j<C; j++) arr[i][j] = narr[i][j];
}
}
if(K[i] == 1){
for(int i=0;i<R;i++){
for(int j=0;j<C;j++){
narr[R-1-i][j]=arr[i][j];
}
}
for(int i=0; i<R; i++){
for(int j=0; j<C; j++) arr[i][j] = narr[i][j];
}
}
}
cout<<R<<" "<<C<<endl;
for(int i=0;i<R;i++){
for(int j=0;j<C;j++){
cout<<arr[i][j]<<" ";
}
cout<<endl;
}
return 0;
}