ccfcsp3402矩阵重塑(其二)

cpp 复制代码
//矩阵重塑(其二)
#include<iostream>
using namespace std;
int main(){
	int n,m,t;
	cin>>n>>m>>t;
	int c[10000][10000];
	int s=0,sum=0;
	int d[10000],k[100000];
	for(int i=0;i<n;i++){
		for(int j=0;j<m;j++){
			cin>>c[i][j];
			d[s]=c[i][j];
			s++;
		}
	}
	while(t>0){
		int op,a,b;
		cin>>op>>a>>b;
		if(op==1){//重塑
			s=0;
			for(int i=0;i<a;i++){
				for(int j=0;j<b;j++){
					c[i][j]=d[s];
					s++;
				}
			}	
		}
		
		if(op==2)/*转置 */{
			s=0;
			for(int i=0;i<n;i++){
				for(int j=0;j<m;j++){
					c[j][i]=d[s];
					s++;
				}
			}
			s=0;//转置之后更新,以便重塑 
			for(int i=0;i<m;i++){
				for(int j=0;j<n;j++){
					d[s]=c[i][j];
					s++;
				}
			}
		}
		
		if(op==3) /*//查询 */{
			k[sum]=c[a][b];
			sum++;
		}
		t--;
	}
	for(int i=0;i<sum;i++){
		cout<<k[i]<<endl;
	}
	return 0;
}

**注意,以上代码的各数组大小根据题意改变,DEV可能不支持太大的空间

相关推荐
Trouvaille ~9 小时前
【Linux】应用层协议设计实战(一):自定义协议与网络计算器
linux·运维·服务器·网络·c++·http·应用层协议
CSCN新手听安9 小时前
【linux】高级IO,I/O多路转接之poll,接口和原理讲解,poll版本的TCP服务器
linux·运维·服务器·c++·计算机网络·高级io·poll
CSCN新手听安9 小时前
【linux】网络基础(三)TCP服务端网络版本计算器的优化,Json的使用,服务器守护进程化daemon,重谈OSI七层模型
linux·服务器·网络·c++·tcp/ip·json
m0_736919109 小时前
C++中的委托构造函数
开发语言·c++·算法
小小小小王王王9 小时前
洛谷-P1886 【模板】单调队列 / 滑动窗口
c++·算法
PPPPPaPeR.9 小时前
光学算法实战:深度解析镜片厚度对前后表面折射/反射的影响(纯Python实现)
开发语言·python·数码相机·算法
看我干嘛!9 小时前
python第五次作业
算法
历程里程碑9 小时前
Linux 库
java·linux·运维·服务器·数据结构·c++·算法
Sheep Shaun9 小时前
如何让一个进程诞生、工作、终止并等待回收?——探索Linux进程控制与Shell的诞生
linux·服务器·数据结构·c++·算法·shell·进程控制
Pluchon9 小时前
硅基计划4.0 简单模拟实现AVL树&红黑树
java·数据结构·算法