我必须做以下练习:
编写一个函数,给定两个整数(x 和 k)和一个 MXN 矩阵,如果有一个元素在矩阵的至少 x 列中至少出现 k 次,则返回 TRUE。
这是我的解决方案,但有问题:
#include <iostream>
using namespace std;
const int DIM = 3;
bool check ( int matrix[DIM][DIM], int element, int k, int x )
{
bool occur = false;
int i,j = 0;
for ( i=0; i<DIM; i++ )
{
for ( j=0; j<DIM; j++)
{
while ( i<k && occur)
{
matrix[i][j] == element;
i++;
}
}
}
return occur;
}
int main ()
{
int matrix[DIM][DIM] = {{1,2,3},
{4,1,6},
{7,8,9}};
int x = 2;
int k = 1;
int elemento = 1;
if ( check (matrix, element, k , x))
{
cout << "l'elemento "<< elemento <<" ricorre "<< k <<" volta/e in "<< x <<" colonna/e";
}
return 0;
}