#include #include #include #include #include #include using namespace std; int cost_pos[401][401]; int cost_num[401][401]; int min_cs[401][401]; int min_cm[401][401]; int nums[401]; int nums1[401]; int n; int type1,type2; int nump[401]; int nump1[401]; int swaps[1000001][2],k,cost; int swaps1[1000001][2],k1,cost1; int partition (int arr[], int low, int high) { int pivot = arr[high]; int i = (low - 1); for (int j = low; j <= high- 1; j++) { if (arr[j] <= pivot) { //if(arr[i+1]!=arr[j]) //{ //cout<>n; for(int i=0; i>nums[i]; nums1[i]=nums[i]; nump[nums[i]]=i+1; nump1[nums[i]]=i+1; } cin>>type1; for(int i=1; i<=n; i++) for(int j=1; j<=n; j++) cin>>cost_pos[i][j]; cin>>type2; for(int i=1; i<=n; i++) for(int j=1; j<=n; j++) cin>>cost_num[i][j]; quickSort(nums,0,n-1); sort1(nums1,n); /*for(int i=0; i