题库 软件开发 题目列表 问题描述 给你一个n行n列的矩阵,你需要对它进行q次操...
问答题
问题描述
给你一个n行n列的矩阵,你需要对它进行q次操作,操作种类有如下两种:
    1 r: 表示将矩阵的第r行向右循环移位1位。
    2 c: 表示将矩阵的第c列向上循环移位1位。
假设矩阵的某一行元素从左向右为a_1,a_2,…,a_n,其向右循环移位1位后的结果是a_n, a_1, a_2, …, a_{n-1}。将矩阵的某一列向上循环位移类似,具体可以参看样例解释。最后输出q次操作后的结果矩阵。
输入描述
第一行两个正整数n、q,分别表示矩阵的行列数均为n,要进行的操作数为q。1<=n<=100, q<=200。
接下来n行每行n个整数,第i行的第j个数表示矩阵第i行第j列的元素值。
接下来q行每行两个整数ti和xi,其中ti表示操作的种类(1或2),xi表示操作对应的r或c,保证1<=xi<=n。
输出描述
输出一个n行n列的矩阵,表示q次操作后的结果矩阵。
输入样例1
3 2
1 2 3
4 5 6
7 8 9
2 2
1 2
输出样例1
1 5 3
6 4 8
7 2 9
样例解释1
第一个操作是将矩阵的第2列向上循环移位1位,矩阵变为:
1 5 3
4 8 6
7 2 9
第二个操作是将矩阵的第2行向右循环位移1位,矩阵变为:
1 5 3
6 4 8
7 2 9
题目信息
校招真题
-
正确率
0
评论
8
点击