ปัญหา
เราต้องเขียนฟังก์ชัน JavaScript ที่รับตัวเลข n ฟังก์ชันควรสร้างอาร์เรย์ที่มีคู่จำนวนเต็ม [a, b] ที่ทำให้เงื่อนไขต่อไปนี้เป็นจริง:
0 <= a <= b <= n
ตัวอย่าง
โค้ดตัวอย่างด้านล่าง:
const num = 4;
const findPairs = (n = 1) => {
const arr = [];
for (let i = 0; i <= n; i++) {
for (let j = i; j <= n; j++) {
let temp = [];
temp.push(i, j);
arr.push(temp);
}
}
return arr;
};
console.log(findPairs(num));
ผลลัพธ์
[ [ 0, 0 ], [ 0, 1 ], [ 0, 2 ], [ 0, 3 ], [ 0, 4 ], [ 1, 1 ], [ 1, 2 ], [ 1, 3 ], [ 1, 4 ], [ 2, 2 ], [ 2, 3 ], [ 2, 4 ], [ 3, 3 ], [ 3, 4 ], [ 4, 4 ] ]
คำอธิบายเพิ่มเติม
สร้างคู่ (a,b) ที่ 0≤a≤b≤n จำนวนคู่ = (n+1)(n+2)/2 สำหรับ n=4 ได้ 15 คู่ โค้ดใช้ nested loop j เริ่มจาก i เพื่อให้ a≤b