根据题目描述就是将一个n*n的二维数组,初始为0,然后根据输入的选择op,执行对二维数组行和列的变换,然后打印结果就可以了。
using namespace std;
int matrix[501][501];
int main(){
int t;
cin>>t;
while(t--){
int n,q;
cin>>n>>q;
for(int i=0;i<n;i++){//初始化二维数组
for(int j=0;j<n;j++){
matrix[i][j]=0;
}
}
while(q--){
int op,k,v;
cin>>op>>k>>v;
if(op==1){//对行变换
for(int j=0;j<n;j++){
matrix[k-1][j]=v;//下标从0开始就要k-1
}
}
if(op==2){//对列进行变换
for(int i=0;i<n;i++){
matrix[i][k-1]=v;
}
}
}
for(int i=0;i<n;i++){//打印结果
for(int j=0;j<n;j++){
cout<<matrix[i][j]<<" ";
}
cout<<endl;
}
}
return 0;
}