C/C++ 程式檢查使用陣列中的所有數字是否可以組成一個可被 3 整除的數?
在本節中,如果給定一個有 n 個數字的陣列,我們需要檢查是否使用這些數字的所有元素生成一個數字,該數字可以被 3 整除。如果陣列元素為 {15, 24, 23, 13},那麼我們可以生成像 15242313 這樣的整數。它可以被 3 整除。
演算法
checkDivThree(arr)
Begin rem := 0 for each element e in arr, do rem := (rem + e) mod 3 done if rem is 0, then return true end if return false End
示例
#include<iostream>
#define MAX 4
using namespace std;
bool checkDivThree(int arr[], int n){
int rem = 0;
for(int i = 0; i<n; i++){
rem = (rem + arr[i]) % 3;
}
if(rem == 0){
return true;
}
return false;
}
main() {
int arr[] = {15, 24, 23, 13};
int n = sizeof(arr)/sizeof(arr[0]);
if(checkDivThree(arr, n)){
cout << "Divisible";
}else{
cout << "Not Divisible";
}
}輸出
Divisible
廣告
資料結構
網路
RDBMS
作業系統
JAVA
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP