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

C++ में N कट में टुकड़ों की अधिकतम संख्या


यह देखते हुए कि कार्य समान आकार के वर्ग या आयत टुकड़ों की अधिकतम संख्या की गणना करना है जो किसी दिए गए वर्ग टुकड़े को क्षैतिज या लंबवत रूप से कुल N संख्या में काटकर प्राप्त किया जा सकता है।

आइए अब एक उदाहरण का उपयोग करके समझते हैं कि हमें क्या करना है -

इनपुट -एन=8

आउटपुट -25

स्पष्टीकरण − जब N=8, ऊर्ध्वाधर कटों की संख्या =4 और क्षैतिज कटों की संख्या =4।

कुल टुकड़े =25

1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25

इनपुट - 7

आउटपुट -20

1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20

निम्नलिखित कार्यक्रम में उपयोग किया गया दृष्टिकोण इस प्रकार है

  • यदि एन कटों की संख्या है और हमें परिणामी टुकड़ों को अधिकतम करना है तो समान संख्या में क्षैतिज और लंबवत कटौती करनी होगी।

    यदि N सम है तो समान क्षैतिज और ऊर्ध्वाधर कट होंगे और यदि N विषम है, तो क्षैतिज कट ऊर्ध्वाधर कटों से 1 अधिक होंगे या इसके विपरीत।

    इसलिए, क्षैतिज =N/2 और ऊर्ध्वाधर कटों की संख्या =N-H.

  • फ़ंक्शन में MaxPieces() क्षैतिज कटौती की संख्या को संग्रहीत करने के लिए एक चर H =N/2 प्रकार int प्रारंभ करें।

  • वर्टिकल कट की संख्या को स्टोर करने के लिए एक और वैरिएबल V=N-H टाइप इंट इनिशियलाइज़ करें।

  • टुकड़ों की अंतिम संख्या =(क्षैतिज पंक्तियाँ)*(ऊर्ध्वाधर पंक्तियाँ) =(H+1)*(V+1)

उदाहरण

#include <bits/stdc++.h>
using namespace std;
int MaxPieces(int N){
   //H is the number of horizontal cuts
   int H = N / 2;
   //V is the number of vertical cuts
   int V = N-H;
   // maximum number of pieces = (H+1)*(V+1)
   return ((H + 1) * (V + 1));
}
//Main function
int main(){
   //Number of cuts
   int N = 7;
   cout << "Max pieces = "<<MaxPieces(N);
   return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो हमें निम्न आउटपुट मिलेगा -

20

  1. सी++ पेंटाटोप नंबर

    पास्कल के त्रिभुज में एक पंचकोण संख्या को पाँचवीं संख्या के रूप में वर्णित किया गया है। अब, जैसा कि आप जानते हैं, यह पांचवीं संख्या है, तो इसका मतलब है कि हमारे पास पास्कल के त्रिकोण में कम से कम पांच संख्याएं होनी चाहिए, इसलिए इस श्रृंखला की पहली संख्या 1 4 6 4 1 से शुरू होती है। पास्कल त्रिभुज की

  1. सी ++ पथ लंबाई जिसमें अधिकतम संख्या में मोड़ हैं

    एक समस्या को हल करने के लिए जिसमें हमें एक बाइनरी ट्री दिया जाता है। अब हमें उस पथ को खोजने की आवश्यकता है जिसमें अधिकतम संख्या में मोड़ हों। यानी, एक मोड़ तब माना जाता है जब पथ की दिशा बाएं से दाएं या इसके विपरीत बदलती है, उदाहरण के लिए इनपुट - आउटपुट - 6 अब इस दृष्टिकोण में, हम पेड़ से गुजरें

  1. C++ में N कटने के बाद वृत्त के टुकड़ों को गिनें

    हमें एक पूर्णांक N दिया गया है जो 2D-वृत्त पर लगाए गए कटों की संख्या को दर्शाता है। प्रत्येक वृत्त वृत्त को दो भागों में विभाजित करता है। लक्ष्य N कट के बाद वृत्त के टुकड़ों को खोजना है। टुकड़ों की संख्या =2 * नहीं। कटौती की आइए उदाहरणों से समझते हैं। इनपुट -एन=1 आउटपुट - सर्कल के टुकड़े:2 स्पष