题目输入为第一行数字: N,M,T
此后的N行,每行M个数字。
此后T行,输入r1,r2,c1,c2,S,A
题目要求:对给定的一个N行M列的数组,进行T次局部排序,输出局部排序后数组。
排序规则为,对r1行到r2行的第c1列到第c2列的数据 根据指定的第S列进行排序,如果A==0则从小到大排序,A==1则从大到小排序。
输出排序后完整的数组。
例子:
输入:
4 4 1
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
2 3 2 3 3 1
输出:
1 2 3 4
5 10 11 8
9 6 7 12
13 14 15 16
代码如下:通过率100%
#include <iostream>
#include <algorithm>
#include <vector>;
using namespace std;
bool compA1(vector<int> a, vector<int> b,int s) {
return a[s] > b[s];
}
int main() {
int N, M, T;
cin >> N >> M >> T;
vector<vector<int>> data(N);
for (int i = 0; i < N