दो पूर्णांक A और B और एक संख्या X को देखते हुए। लक्ष्य उन मानों की गणना करना है जो X के पास हो सकते हैं ताकि A%X=B हो। उपरोक्त समीकरण के लिए यदि, A==B तो X के अनंत मान संभव हैं, इसलिए -1 लौटाएं। यदि ए <बी तो कोई समाधान नहीं होगा इसलिए 0 लौटाएं। यदि ए>बी तो परिणाम के रूप में (एबी) के भाजक की गणना करें।
उदाहरण के लिए
इनपुट
A=5, B=2
आउटपुट
Count of all possible values of X such that A % X = B are: 1
स्पष्टीकरण
5%3=2. So X is 3 here.
इनपुट
A=10, B=10
आउटपुट
Count of all possible values of X such that A % X = B are: −1
स्पष्टीकरण
Here A==B so there are infinite solutions so −1 is returned.
नीचे दिए गए कार्यक्रम में उपयोग किया गया दृष्टिकोण इस प्रकार है -
इस दृष्टिकोण में हम i=1 से i*i<=(A−B) के लिए लूप का उपयोग करके (A−B) के भाजक की गणना करेंगे। अगर कोई मैं पूरी तरह से विभाजित करता हूं (ए-बी) तो तदनुसार गिनती अपडेट करें।
-
इनपुट के रूप में पूर्णांक A और B लें।
-
यदि A
-
यदि A==B तो परिणाम के रूप में −1 प्रिंट करें।
-
ए>बी के लिए, फ़ंक्शन संभव_मान (इंट ए, इंट बी) ए और बी लेता है और एक्स के सभी संभावित मानों की गणना करता है जैसे कि ए% एक्स =बी।
-
प्रारंभिक गणना को 0 और X=A−B के रूप में लें।
-
X के भाजक की गणना के लिए i=1 से i*i<(A−B) तक लूप का उपयोग करके ट्रैवर्स करें।
-
अगर कोई मैं एक्स को पूरी तरह से विभाजित करता हूं तो temp=i, temp_2=B−1 लें और अगर i*i!=X तो temp_2 =X / i सेट करें।
-
अगर temp> B और temp_2>B तो इंक्रीमेंट काउंट।
-
लूप के अंत में परिणाम के रूप में वापसी की गणना करें।
उदाहरण
#include <bits/stdc++.h> using namespace std; int possible_values(int A, int B){ int count = 0; int X = A − B; for (int i = 1; i * i <= A − B; i++){ if(X % i == 0){ int temp = i; int temp_2 = B − 1; if(i * i != X){ temp_2 = X / i; } if(temp > B){ count++; } if(temp_2 > B){ count++; } } } return count; } int main(){ int A = 15, B = 5; if(A < B){ cout<<"Count of all possible values of X such that A % X = B are: "<<0; } else if(A == B){ cout<<"Count of all possible values of X such that A % X = B are: "<<−1; } else{ cout<<"Count of all possible values of X such that A % X = B are: "<<possible_values(A, B); } return 0; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -
Count of all possible values of X such that A % X = B are: 1