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

C++ में दी गई संख्या के अंकों का उपयोग करके बनने वाली अधिकतम संख्या ज्ञात करें


मान लीजिए हमारे पास n अंकों की एक संख्या है। हमें उस संख्या के सभी अंकों का उपयोग करके प्राप्त की जा सकने वाली अधिकतम संख्या ढूंढनी है। इसलिए यदि संख्या 339625 है, तो अधिकतम संख्या 965332 हो सकती है।

समस्या से, हम देख सकते हैं कि हम आसानी से अंकों को गैर-बढ़ते क्रम में सॉर्ट कर सकते हैं, फिर उन्हें प्रिंट कर सकते हैं। लेकिन हम इसे अधिक कुशल तरीके से हल कर सकते हैं। हम आकार 10 का एक सरणी बना सकते हैं जिसमें प्रत्येक अंक की आवृत्ति स्टोर हो, फिर 9 से 0 तक तदनुसार संख्याओं को प्रिंट करें।

उदाहरण

#include <iostream> #include <string> using namespace std; int maxNumFromNum(int num) { int freq[10] = {0}; string str = to_string(num); for (int i=0; i<str.length(); i++) freq[str[i]-'0']++; int res = 0, mul = 1; for (int i = 0; i <= 9; i++) { while (freq[i] > 0) { res = res + (i * mul); freq[i]--; mul = mul * 10; } } return res; } int main() { int num = 339625; cout << "Maximum number: " << maxNumFromNum(num); }

आउटपुट

Maximum number: 965332

  1. C++ में N सेगमेंट का उपयोग करके सेवन सेगमेंट डिस्प्ले पर प्रदर्शित अधिकतम संख्या C++ में N सेगमेंट का उपयोग करके सेवन सेगमेंट डिस्प्ले पर प्रदर्शित अधिकतम संख्या

    दिया गया कार्य N सेगमेंट का उपयोग करके किसी भी संख्या के सेवन सेगमेंट डिस्प्ले पर प्रदर्शित की जा सकने वाली अधिकतम संख्या ढूंढना है।उदाहरण से समझते हैंइनपुट - N=5आउटपुट - 71व्याख्या - सबसे बड़ी संख्या सेवन सेगमेंट डिस्प्ले पर इस प्रकार प्रदर्शित होगी।इनपुट - N=6आउटपुट - 111प्रयुक्त दृष्टिकोणनिम्नलिख

  1. - C++ का उपयोग करके एक संख्या x खोजें जिसके अंकों का योग x के बराबर दिए गए n के बराबर हो

    यहां हम एक समस्या देखेंगे, जहां हम एक संख्या n लेते हैं, हमें एक अन्य मान x ढूंढना है, जैसे कि x + x के अंकों का योग दी गई संख्या n के बराबर हो। मान लीजिए n का मान 21 है। यह प्रोग्राम x = 15 लौटाएगा, क्योंकि 15 + 15 के अंकों का योग (1+5) = 21 = n होता है। इसे हल करने के लिए, हमें सरल दृष्टिकोण अपना

  1. - C++ में दी गई संख्या n के लिए x ढूंढें जहां x + अंकों का योग = n

    समस्या विवरण एक संख्या n दी गई है, हमें एक मान x ढूंढना है जिससे x + x के अंकों का योग = n हो। उदाहरण के लिए, n = 21 के लिए, x = 15 होगा क्योंकि 15 + (1+5) = 21। हल दृष्टिकोण सरल दृष्टिकोण: 1 से n तक पुनरावृति करें, प्रत्येक संख्या के लिए जांचें कि क्या संख्या + उसके अंकों का योग = n है। यदि हां,