Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सबसे छोटी संख्या X ज्ञात कीजिए कि X! C++ में कम से कम Y अनुगामी शून्य होते हैं

हमें एक संख्या Y लेनी है, हमें सबसे छोटी संख्या X मिलेगी, जैसे कि X! प्रशिक्षण शून्य की कम से कम Y संख्या शामिल है। उदाहरण के लिए, यदि Y =2, तो X का मान =10. जैसा कि X! =3228800। इसमें Y संख्या शून्य है।

हम इसे बाइनरी सर्च का उपयोग करके हल कर सकते हैं। N में अनुगामी शून्यों की संख्या! N! में गुणनखंड 5 की गणना द्वारा दिया जाता है। X को [0, 5*Y]

. श्रेणी में बाइनरी खोज का उपयोग करके पाया जा सकता है

उदाहरण

#include<iostream>
using namespace std;
int factorCount(int n, int X) {
   if (X < n)
      return 0;
   return (X / n + factorCount(n, X / n));
}
int findX(int Y) {
   int left = 0, right = 5 * Y;
   int N = 0;
   while (left <= right) {
      int mid = (right + left) / 2;
   if (factorCount(5, mid) < Y) {
      left = mid + 1;
   }else {
      N = mid;
      right = mid - 1;
      }
   }
   return N;
}
int main() {
   int Y = 4;
   cout << "Smallest value of X: " << findX(Y);
}

आउटपुट

Smallest value of X: 20

  1. C++ . का उपयोग करके पेल नंबर खोजें

    दी गई समस्या में, हमें एक पूर्णांक n दिया गया है, हमें Pn . खोजने की आवश्यकता है , यानी, उस स्थिति में पेल नंबर। अब, जैसा कि हम जानते हैं, पेल नंबर इस सूत्र द्वारा दी गई श्रृंखला का एक हिस्सा है -Pn =2*पीएन-1 + पीएन-2 पहली दो शुरुआती संख्याओं के साथ - P0 =0 और पी1 =1 समाधान खोजने के लिए दृष्टिकोण

  1. आधार B में अनुगामी शून्यों की संख्या ज्ञात कीजिए जो N का प्रतिनिधित्व करते हैं! सी ++ का उपयोग करना

    इस लेख में, हम किसी दी गई संख्या N के अनुगामी शून्य को उसके भाज्य के आधार B निरूपण में खोजने की समस्या को समझेंगे। उदाहरण के लिए Input : N = 7 Base = 2 Output : 4 Explanation : fact(7) = 5040 in base10 and 1001110110000 in base16 having 4 trailing zero. Input : N = 11 Base = 5 Output : 2 Explanatio

  1. N के आधार 16 निरूपण में अनुगामी शून्यों की संख्या ज्ञात कीजिए! सी ++ का उपयोग करना

    इस लेख में, हम उदाहरण के लिए इसके भाज्य के आधार 16 निरूपण में दी गई संख्या N के अनुगामी शून्यों को खोजने की समस्या को समझेंगे Input : N = 7 Output : 1 Explanation : fact(7) = 5040 in base10 and 13B0 in base16 having 1 trailing zero. Input : N = 11 Output : 2 Explanation : fact(11) = 39916800 in bas