अलग-अलग संख्याओं के एम * एन मैट्रिक्स को देखते हुए, हमें किसी भी क्रम में 2-डी सरणी (मैट्रिक्स) में सभी भाग्यशाली संख्याओं को वापस करना होगा।
एक भाग्यशाली संख्या मैट्रिक्स का एक तत्व है जैसे कि यह अपनी पंक्ति में न्यूनतम और इसके कॉलम में अधिकतम तत्व है।
उदाहरण के लिए - अगर इनपुट ऐरे है -
const arr = [ [3,7,8], [9,11,13], [15,16,17] ];
तब आउटपुट होना चाहिए -
const output = [15];
क्योंकि 15 एकमात्र भाग्यशाली संख्या है क्योंकि यह अपनी पंक्ति में न्यूनतम और इसके कॉलम में अधिकतम है।
उदाहरण
इसके लिए कोड होगा -
const arr = [ [3,7,8], [9,11,13], [15,16,17] ]; const luckyNumbers = (arr, res = []) => { let M = arr.length, N = arr[0].length; let min = Array(M).fill( Infinity); let max = Array(N).fill(-Infinity); for (let i = 0; i < M; ++i) for (let j = 0; j < N; ++j) min[i] = Math.min(min[i], arr[i][j]), max[j] = Math.max(max[j], arr[i][j]); for (let i = 0; i < M; ++i) for (let j = 0; j < N; ++j) if (min[i] == max[j]) res.push(arr[i][j]); return res; }; console.log(luckyNumbers(arr));
आउटपुट
और कंसोल में आउटपुट होगा -
[15]