Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

รหัส C++ เพื่อค้นหาตัวเลขสามตัวที่มีผลรวมเป็น n


สมมติว่าเรามีตัวเลข n เราจะหาตัวเลขสามตัว a, b และ c โดยที่ a + b + c=n และไม่มีตัวเลขใดในจำนวนนี้ที่คูณด้วย 3

ดังนั้น หากอินพุตเท่ากับ n =233 เอาต์พุตจะเป็น [77, 77, 79]

ขั้นตอน

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

if (n - 2) mod 3 is same as 0, then:
   return 1, 2, and n - 3
Otherwise
   return 1, 1, and n - 2

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

#include <bits/stdc++.h>
using namespace std;
void solve(int n){
   if ((n - 2) % 3 == 0)
      cout << 1 << ", " << 2 << ", " << n - 3;
   else
      cout << 1 << ", " << 1 << ", " << n - 2;
}
int main(){
   int n = 233;
   solve(n);
}

อินพุต

233

ผลลัพธ์

1 2 230