Chúng ta được cung cấp một mảng số nguyên arr[] và nhiệm vụ là tính số lượng các phần tử mảng mà chia hết cho tổng của tất cả các phần tử khác.
Ví dụ
Input - int arr_1[] = {9, 6, 3} Output - count is 3
Giải thích - Tổng các phần tử 9+6 = 15 chia hết cho 3, tổng 9+3 = 12 chia hết cho 6 và 6+3 = 9 chia hết cho 9. Do đó, count là 3.
Input - arr[] = {3, 10, 4, 6, 7} Output - count is 3
Giải thích - Tổng 10+4+6+7 = 27 chia hết cho 3, tổng 3+4+6+7 = 20 chia hết cho 10 và 3+10+4+7 = 24 chia hết cho 6. Do đó, count là 3.
Phương pháp tiếp cận
- Tạo mảng arr[]
- Tính độ dài mảng bằng hàm sizeof()
- Khởi tạo biến đếm count = 0
- Duyệt qua từng phần tử arr[i] với i từ 0 đến size-1
- Tính tổng các phần tử còn lại (trừ arr[i])
- Nếu tổng % arr[i] == 0 thì tăng count
- Trả về count
Ví dụ code C++
#include <iostream>
using namespace std;
int countelements(int arr_1[], int size) {
int result = 0;
for (int i = 0; i < size; i++) {
int sum = 0;
for (int j = 0; j < size; j++) {
if (i == j) continue;
sum += arr_1[j];
}
if (sum % arr_1[i] == 0) {
result++;
}
}
return result;
}
int main() {
int arr_1[] = {1, 2, 3, 4, 5, 6};
int size = sizeof(arr_1) / sizeof(arr_1[0]);
cout << "count is " << countelements(arr_1, size);
return 0;
}
Kết quả
count is 2