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

सी++ में एक सरणी के घूर्णन में प्रत्येक तत्व को संयोजित करके अधिकतम संख्या

हमें संख्याओं का एक वृत्ताकार सरणी दिया गया है। एक गोलाकार सरणी वह है जिसमें तत्वों को इस तरह व्यवस्थित किया जाता है कि पहले तत्व को अंतिम तत्व के ठीक बगल में माना जाता है। इनका उपयोग कतारों को लागू करने के लिए किया जाता है।

प्रत्येक तत्व में समान या भिन्न अंकों की संख्या होती है। यदि आवश्यक हो तो तत्वों के रोटेशन का उपयोग करके, संख्याओं को संयोजित करके उच्चतम संभव संख्या बनाना लक्ष्य है। हम सभी तत्वों के सभी सबसे बाएं अंकों के बीच उच्चतम बाएं अंक को ढूंढकर ऐसा करेंगे। उच्चतम बाएं अंक वाली संख्या पहले स्थान पर होगी।

  • यदि यह पहले स्थान पर है, तो 1 से n-1 तक के सभी नंबरों को उसी रूप में रखा जाता है।

  • यदि यह कहीं बीच में है, और इसका सूचकांक i है, तो सभी अनुक्रमित i+1 से n-1 को पहले जोड़ा जाता है, उसके बाद अनुक्रमित 0 से i-1 तक।

  • यदि यह अंतिम है, तो इसके बाद 0 से i-1 तक के सभी अनुक्रमित जोड़ दिए जाते हैं।

इनपुट

Arr[] = { 121, 43, 65, 32 }

आउटपुट

Highest number: 653212143

स्पष्टीकरण - सबसे बड़ा बायां अंक 6 है। 65 को पहले स्थान पर रखें उसके बाद 32, फिर 121,43 पर। Arr[] एक गोलाकार सरणी है।

इनपुट

Arr[] = { 1101, 9, 321, 77 }

आउटपुट

Highest number: 9321771101

स्पष्टीकरण − सबसे बड़ा बायां अंक 9321771101 है। 9 को पहले स्थान पर रखें उसके बाद 321, फिर 77, 1101। जैसा कि Arr[] एक गोलाकार सरणी है।

नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है

  • ऐरे एआर [] संख्याओं को संग्रहीत करता है।

  • फ़ंक्शन लार्जेट्स (int arr [], int n) इनपुट के रूप में सरणी और इसकी लंबाई n लेता है और उच्चतम संख्या को प्रिंट करता है जिसे बनाया जा सकता है ..

  • वेरिएबल मैक्सएक्स का उपयोग संख्या को उच्चतम बाएं अंक के साथ स्टोर करने के लिए किया जाता है, जिसे 0 से शुरू किया जाता है।

  • Pos का उपयोग अधिकतम के सूचकांक को संग्रहीत करने के लिए किया जाता है।

  • i=0 से n तक प्रत्येक arr[i] के सबसे बाएं अंक को 10 से विभाजित करके जब तक कि यह 0 नहीं हो जाता है, तब तक ज्ञात करें। हर बार शेष इकाई के स्थान पर अंक का प्रतिनिधित्व करेगा।

  • यदि वर्तमान ऐसा अंक उच्चतम है, जब num==0, (मतलब रेम में सबसे बाईं ओर का अंक है), तो अपडेटमैक्स और पॉज़।

  • तत्वों को इंडेक्स पॉज़ से एरे के अंत तक और फिर इंडेक्स 0 से पॉज़ -1 तक प्रिंट करें।

उदाहरण

#include <bits/stdc++.h>
using namespace std;
void Largest(int arr[], int n){
   int maxx = 0;
   int pos = 0; //index of number with highest leftmost digit
   for (int i = 0; i < n; i++) {
      int num = arr[i];
      // check for the last digit
      while (num!=0) {
         int rem = num % 10;
         num = num / 10;
         if (num == 0) {
            if (maxx < rem) {
               maxx = rem;
               pos = i;
            }
         }
      }
   }
   // print the largest number
   cout<<"Largest number by concatenation: ";
   for (int i = pos; i < n; i++)
      cout << arr[i];
   for (int i = 0; i < pos; i++)
      cout << arr[i];
}
int main(){
   int Arr[] = { 12,34,56,98 };
   int size=4;
   Largest(Arr,size);
   return 0;
}

आउटपुट

Largest number by concatenation: 98123456

  1. एक सरणी में अभाज्य संख्या K ज्ञात करें जैसे कि (A[i]% K) C++ में अधिकतम हो

    मान लीजिए कि हमारे पास n पूर्णांकों के साथ एक सरणी A है। हमें एक तत्व K को खोजना है जैसे कि K अभाज्य है, और A[i] mod K, K के सभी संभावित मानों में से सभी मान्य i के लिए अधिकतम है। यदि ऐसी कोई संख्या नहीं मिलती है, तो -1 लौटाएं। उदाहरण के लिए, यदि ए =[2, 10, 15, 7, 6, 8, 13], तो आउटपुट 13 होगा। तीन अ

  1. सी ++ में सरणी में प्रत्येक तत्व के लिए निकटतम मान पाएं

    यहां हम देखेंगे कि किसी सरणी में प्रत्येक तत्व के लिए निकटतम मान कैसे प्राप्त करें। यदि किसी तत्व x में अगला तत्व है जो उससे बड़ा है, और सरणी में भी मौजूद है, तो वह उस तत्व का अधिक मूल्य होगा। यदि तत्व मौजूद नहीं है, तो -1 लौटाएं। मान लीजिए कि सरणी तत्व [10, 5, 11, 6, 20, 12] हैं, तो बड़े तत्व [11,

  1. सी ++ में सरणी में प्रत्येक तत्व के लिए निकटतम अधिक मूल्य खोजें

    यहां हम देखेंगे कि किसी सरणी में प्रत्येक तत्व के लिए निकटतम अधिक मूल्य कैसे प्राप्त करें। यदि किसी तत्व x में अगला तत्व है जो उससे बड़ा है, और सरणी में भी मौजूद है, तो वह उस तत्व का अधिक मूल्य होगा। यदि तत्व मौजूद नहीं है, तो -1 लौटाएं। मान लीजिए कि सरणी तत्व [10, 5, 11, 6, 20, 12] हैं, तो बड़े तत्