สมมุติว่าเรามีเลขตัวเดียว เราต้องหาผลรวมของหลักและผลคูณของหลัก หลังจากนั้นให้หาความแตกต่างระหว่างผลรวมและผลิตภัณฑ์ ดังนั้นหากตัวเลขคือ 5362 ผลรวมคือ 5 + 3 + 6 + 2 =16 และ 5 * 3 * 6 * 2 =180 ดังนั้น 180 – 16 =164
ในการแก้ปัญหานี้ ให้นำตัวเลขแต่ละหลักมาบวกและคูณกัน จากนั้นคืนค่าส่วนต่าง
ตัวอย่าง
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
#include <bits/stdc++.h> using namespace std; class Solution { public: int subtractProductAndSum(int n) { int prod = 1; int sum = 0; for(int t = n;t;t/=10){ sum += t % 10; prod *= t % 10; } return prod - sum; } }; main(){ Solution ob; cout << ob.subtractProductAndSum(5362); }
อินพุต
5362
ผลลัพธ์
164