আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি দ্বিমাত্রিক পূর্ণসংখ্যার অ্যারে একমাত্র আর্গুমেন্ট হিসেবে গ্রহণ করবে।
ফাংশনটির কাজ হলো অ্যারেতে থাকা এমন সব পূর্ণসংখ্যা গণনা করা যারা তাদের সারি (row) এবং কলাম (column) উভয়টিতেই সর্বোচ্চ। ফাংশনটি সেই গণনাটি রিটার্ন করবে।
উদাহরণস্বরূপ —
ইনপুট অ্যারে যদি হয় —
const arr = [ [21, 23, 22], [26, 26, 25], [21, 25, 27] ];
তাহলে আউটপুট হবে —
const output = 3;
কারণ ওই তিনটি সংখ্যা হলো 26, 26, 27
উদাহরণ
নিচের কোডটি দেখুন:
const arr = [
[21, 23, 22],
[26, 26, 25],
[21, 25, 27]
];
const countGreatest = (matrix = []) => {
let rows = matrix.length;
if (rows == 0){
return 0;
};
let cols = matrix[0].length;
const colMax = [];
const rowMax = [];
let res = 0;
for (let r = 0; r < rows; ++ r) {
for (let c = 0; c < cols; ++ c) {
rowMax[r] = Math.max(rowMax[r] || 0, matrix[r][c]);
colMax[c] = Math.max(colMax[c] || 0, matrix[r][c]);
}
};
for (let r = 0; r < rows; ++ r) {
for (let c = 0; c < cols; ++ c) {
if (matrix[r][c] == rowMax[r] && matrix[r][c] == colMax[c]) {
res ++;
}
}
}
return res;
};
console.log(countGreatest(arr));
আউটপুট
কনসোল আউটপুট:
3