मान लें हमारे पास एक पूर्णांक n है। हमारा कार्य दो संख्या a और b ज्ञात करना है, जहां ये तीन शर्तें पूरी होंगी:
- a mod b = 0
- a * b > n
- a / b < n
यदि कोई जोड़ी नहीं मिलती है, तो -1 प्रिंट करें।
उदाहरण के लिए, यदि संख्या n = 10 है, तो a और b हो सकते हैं a = 90, b = 10। यह दिए गए नियमों को संतुष्ट करता है।
इस समस्या को हल करने के लिए, हम इन चरणों का पालन करेंगे:
- b = n मान लें। a को इन तीन शर्तों का उपयोग करके ज्ञात किया जा सकता है
- a mod b = 0 जब a, b का गुणक हो
- a / b < n, इसलिए a / b = n - 1 जो < n है
- (a * b > n) => a = n
उदाहरण
#include <iostream>
using namespace std;
void findAandB(int n) {
int b = n;
int a = b * (n - 1);
if (a * b > n && a / b < n) {
cout << "a: " << a << endl;
cout << "b: " << b;
} else
cout << -1 << endl;
}
int main() {
int n = 10;
findAandB(n);
}
आउटपुट
a: 90 b: 10