ในส่วนนี้เราจะมาดูกันว่าตัวเลขสามารถแสดงเป็นตัวเลขต่อเนื่องกันได้หรือไม่ สมมติว่าตัวเลขคือ 27 ซึ่งสามารถแทนด้วย 8 + 9 + 10
ซึ่งสามารถแก้ไขได้ในสองแนวทางที่แตกต่างกัน วิธีแรกคือแนวทางที่ไร้เดียงสา ในแนวทางนั้นเราต้องเช็คว่า i + (i + 1) + (i + 2) เท่ากับตัวเลขหรือไม่ อีกวิธีที่มีประสิทธิภาพคือการตรวจสอบว่าจำนวนนั้นหารด้วย 3 ลงตัวหรือไม่ สมมติว่าตัวเลข x สามารถแทนด้วย 1 วินาทีติดต่อกันได้ 3 ครั้ง จากนั้น 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