在本节中,我们将看到一个数字是否可以表示为树的连续数字。假设数字为27。可以表示为8 + 9 + 10。
这可以用两种不同的方法解决。第一种方法是幼稚的方法。在这种方法中,我们必须检查i +(i + 1)+(i + 2)是否等于数字。另一种有效的方法是通过检查数字是否可被3整除。假设数字x可以由三个连续的1表示,则x =(y-1)+ y +(y + 1)= 3y。因此该数字必须可被3整除。
#include <iostream> using namespace std; bool hasThreeNums(int n) { if(n % 3 == 0){ return true; } return false; } int main() { int num = 27; if(hasThreeNums(num)){ cout << "Can be represented"; }else{ cout << "Cannot be presented"; } }
输出结果
Can be represented