在 C 程式中列印按給定矩陣中零的總數排序的列索引。
給定一個 NxM 大小的陣列,其中 N 為行數,M 為列數,任務是在對列中的任何列存在的零數進行排序後,列印對應矩陣中每列中的零數。
例如,如果第 1 列包含 1 個零,第 2 列不包含任何零,第 3 列包含 2 個零,則結果應為 - 3 1 2。
示例
Input: 0 0 0 1 1 1 1 0 1 Output: 1 3 2
說明

注意 - 矩陣從索引 1 開始。
示例
#include <bits/stdc++.h>
#define row 3
#define col 3
using namespace std;
void sorting(int arr[row][col]){
vector<pair<int, int> >count_zero;
for (int i = 0; i < col; i++){
int count = 0;
for (int j = 0; j < row; j++){
if (arr[j][i] == 0)
count++;
}
count_zero.push_back(make_pair(count, i));
}
sort(count_zero.begin(), count_zero.end());
for (int i = 0; i < col; i++)
cout<< count_zero[i].second + 1 << " ";
}
int main(){
int array[row][col] = {
{ 0, 0, 0 },
{ 1, 1, 1 },
{ 1, 0, 1 }
};
cout<<"sorted order of zeroes count is : ";
sorting(array);
return 0;
}輸出
如果我們執行以上程式,它將生成以下輸出
sorted order of zeroes count is : 1 3 2
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP