दो पूर्णांक 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