เราได้รับเมทริกซ์ขนาด n x n ตัวแปรจำนวนเต็ม x และองค์ประกอบในเมทริกซ์จะถูกจัดเรียงตามลำดับ และงานคือการคำนวณจำนวนองค์ประกอบที่ เท่ากับหรือน้อยกว่า x.
ป้อนข้อมูล −
matrix[3][3] = {{1, 2, 3}, {4, 5, 6}, {6, 7, 8}} and X = 4 ผลผลิต −
count is 4
คำอธิบาย − เราต้องจับคู่ข้อมูลเมทริกซ์ของเรากับค่า x ดังนั้นองค์ประกอบที่น้อยกว่าหรือเท่ากับ x เช่น 4 คือ 1, 2, 3, 4 ดังนั้นการนับคือ 4
ป้อนข้อมูล −
matrix[3][3] = {{1, 2, 3}, {4, 5, 6}, {6, 7, 8}} and X = 0 ผลผลิต −
count is 0
คำอธิบาย − เราต้องจับคู่ข้อมูลเมทริกซ์ของเรากับค่า x ดังนั้นจึงไม่มีองค์ประกอบใดที่น้อยกว่าหรือเท่ากับ x นับเป็น 0
แนวทางที่ใช้ในโปรแกรมด้านล่างมีดังนี้
-
ป้อนขนาดของเมทริกซ์แล้วสร้างเมทริกซ์ขนาด nxn
-
เริ่มการวนซ้ำ I จาก 0 ถึงขนาดแถว
-
ภายในลูป I เริ่มต้นลูป j จาก 0 ถึงขนาดคอลัมน์
-
ตอนนี้ ตรวจสอบว่าเมทริกซ์[i][j] =x ถ้าใช่ ให้เพิ่มจำนวนขึ้น 1 หากไม่ปฏิบัติตามเงื่อนไข
-
คืนยอดรวม
-
พิมพ์ผลลัพธ์
ตัวอย่าง
#include <bits/stdc++.h>
using namespace std;
#define size 3
//function to count the total elements
int count(int matrix[size][size], int x){
int count=0;
//traversing the matrix row-wise
for(int i = 0 ;i<size; i++){
for (int j = 0; j<size ; j++){
//check if value of matrix is less than or
//equals to the x
if(matrix[i][j]<= x){
count++;
}
}
}
return count;
}
int main(){
int matrix[size][size] ={
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
int x = 5;
cout<<"Count of elements smaller than or equal to x in a sorted matrix is: "<<count(matrix,x);
return 0;
} ผลลัพธ์
หากเราเรียกใช้โค้ดข้างต้น เราจะได้ผลลัพธ์ดังต่อไปนี้ -
Count of elements smaller than or equal to x in a sorted matrix is: 5