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

C++ में योग N के बराबर करने के लिए न्यूनतम घात पदों की संख्या

समस्या कथन

दो धनात्मक पूर्णांक N और X दिए गए हैं। कार्य N को X की घातों के योग (X⁰ + X¹ + ... + Xⁿ) के रूप में व्यक्त करना है ताकि X की घातों की संख्या न्यूनतम हो।

N बनाने के लिए उपयोग की गई N की न्यूनतम घातों की संख्या प्रिंट करें।

यदि N=15 और X=3, तो हमें 3 की 3 घातों की आवश्यकता है: 15 = 3² + 3¹ + 3¹

एल्गोरिदम

अंतिम परिणाम की गणना के लिए नीचे दिए गए सूत्र का उपयोग करें:

1. यदि x = 1, तो उत्तर केवल n होगा (n = 1 + 1 + ... n बार)
2. किसी भी संख्या n को इस प्रकार व्यक्त किया जा सकता है: n = x * a + b जहां 0 ≤ b ≤ x-1।
   चूंकि b 0 से x-1 के बीच है, तो b को x⁰ के योग के रूप में b बार व्यक्त किया जाना चाहिए।

C++ उदाहरण

#include <iostream>
using namespace std;

int minNumOfPower(int n, int x) {
    if (x == 1) return n;
    int result = 0;
    while (n > 0) {
        result += (n % x);
        n = n / x;
    }
    return result;
}

int main() {
    int n = 15, x = 3;
    cout << "Minimum number of powers = " << minNumOfPower(15, 3) << endl;
    return 0;
}

आउटपुट

Minimum number of powers = 3
  1. - C++ में दी गई ऊंचाई वाले AVL ट्री में न्यूनतम नोड्स की संख्या

    समस्या कथन AVL ट्री की ऊंचाई दी गई है, कार्य ट्री में न्यूनतम नोड्स की संख्या ढूंढना है जो ट्री में हो सकते हैं। यदि ऊंचाई = 0 तो AVL ट्री में 1 नोड हो सकता है यदि ऊंचाई = 5 तो AVL ट्री में न्यूनतम 20 नोड्स हो सकते हैं एल्गोरिदम AVL ट्री में, हमें ऊंचाई संतुलन गुण बनाए रखना होता है, यानी बाएं और दा

  1. - C++ में सभी तत्वों को समान बनाने के लिए न्यूनतम मूव्स

    समस्या कथन N तत्वों की एक सरणी और एक पूर्णांक K दिया गया है। दी गई सरणी पर निम्न ऑपरेशन किसी भी संख्या में बार करना अनुमत है: K-वें तत्व को सरणी के अंत में डालें और सरणी के पहले तत्व को हटाएं। कार्य सरणी के सभी तत्वों को समान बनाने के लिए आवश्यक न्यूनतम मूव्स की संख्या ढूंढना है। यदि संभव नहीं

  1. - C++ में किसी संख्या के गुणनखंडों का न्यूनतम योग ढूंढना

    यहां हम देखेंगे कि किसी दी गई संख्या के गुणनखंडों का न्यूनतम योग कैसे प्राप्त करें। मान लीजिए एक संख्या 12 है। हम इसे अलग-अलग तरीकों से गुणनखंडित कर सकते हैं: 12 = 12 × 1 (12 + 1 = 13) 12 = 2 × 6 (2 + 6 = 8) 12 = 3 × 4 (3 + 4 = 7) 12 = 2 × 2 × 3 (2 + 2 + 3 = 7) न्यूनतम योग 7 है। हम