คำอธิบายปัญหา
สมมติว่าเรามีตัวเลข A ต้องการหาตัวเลขที่น่าสนใจ (interesting number) ที่มากกว่าหรือเท่า A และใกล้ที่สุด ตัวเลขน่าสนใจคือตัวเลขที่ผลรวมหลักหาร 4 ลงตัว
ตัวอย่าง: A = 432 ผลลัพธ์คือ 435 เพราะ 4+3+5=12 หาร 4 ลงตัว
ขั้นตอนการแก้ปัญหา
while (A / 1000 + A % 1000 / 100 + A % 100 / 10 + A % 10) % 4 != 0:
เพิ่ม A ขึ้น 1
คืนค่า A
ตัวอย่างโค้ด C++
#include <bits/stdc++.h>
using namespace std;
int solve(int A) {
while ((A / 1000 + A % 1000 / 100 + A % 100 / 10 + A % 10) % 4 != 0) {
A++;
}
return A;
}
int main() {
int A = 432;
cout << solve(A) << endl;
}
อินพุต
432
เอาต์พุต
435