2次元配列の列を追加し、最小の合計を返すプログラムを作成する必要があります。これは私が書いたプログラムですが、より効果的な方法があるかどうかを知りたいのです。主なプログラムは教授によって私たちに与えられました。私は、各列の整数を宣言することなく、これを行う方法があるかどうかを知りたいのです。C++で2次元配列の列を集計する方法は?
#include <iostream>
#include <string>
using namespace std;
int smallCol(int x[][3], int row, int col){
int c1 = 0;
int c2 = 0;
int c3 = 0;
int min;
for (int r = 0; r < row; r++){
for(int c = 0; c < col; c++){
if(c==0)
c1 += x[r][c];
if(c==1)
c2 += x[r][c];
if(c==2)
c3 += x[r][c];
}
}
min = c1;
if(c2 < c1)
min = c2;
if(c3 < c2)
min = c3;
return min;
}
int main() {
int x[2][3] = {{3, 1, 4}, {1, 5, 9}};
cout << "Smallest column sum is " << smallCol (x, 2, 3) << endl;
// from the 2-d array x that has size 2 x 3, find the smallest col sum
// output will be 4 since col#0 contains 3 and 1 is smallest.
return 0;
}
100カラムの2dアレイをサポートするにはどのくらいの時間がかかりますか?それは比較的小さい2次元アレイです。 –