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

C++ में एक नंबर तक पहुंचें

मान लीजिए कि आप एक अनंत संख्या रेखा पर स्थिति 0 पर खड़े हैं। अब स्थिति लक्ष्य पर एक लक्ष्य है। यहां प्रत्येक चाल में, आप या तो बाईं ओर या दाईं ओर जा सकते हैं। n-वें चाल के दौरान (1 से शुरू करते हुए), आप n कदम उठाते हैं। हमें गंतव्य तक पहुँचने के लिए आवश्यक न्यूनतम चरणों की संख्या ज्ञात करनी होगी। तो अगर इनपुट लक्ष्य =3 की तरह है, तो हमें 2 चरणों की आवश्यकता है। 0 से 1 तक, 1 से 3 तक।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • लक्ष्य :=|target|, cnt :=0
  • लक्ष्य के दौरान> 0,
    • cnt को 1 से घटाएं
    • लक्ष्य :=लक्ष्य –cnt
  • यदि लक्ष्य सम है, तो वापस cnt, अन्यथा cnt + 1 + cnt mod 2

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

उदाहरण

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
   int reachNumber(int target) {
      target = abs(target);
      int cnt = 0;
      while(target > 0){
         target -= ++cnt;
      }
      return target % 2 == 0? cnt : cnt + 1 + cnt % 2;
   }
};
main(){
   Solution ob;
   cout << (ob.reachNumber(3));
}

इनपुट

3

आउटपुट

2

  1. C++ में मितव्ययी संख्या

    इस समस्या में, हमें एक धनात्मक पूर्णांक N दिया जाता है। हमारा कार्य यह जाँचने के लिए एक प्रोग्राम बनाना है कि दी गई संख्या मितव्ययी संख्या है या नहीं। मितव्ययी संख्या - एक संख्या जिसके अंकों की संख्या दी गई संख्या के अभाज्य गुणनखंड में अंकों की संख्या से अधिक है। उदाहरण − 625, संख्या 625 का अभाज्

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

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

  1. C++ में एडम नंबर

    इस खंड में हम देखेंगे कि एक प्रोग्राम कैसे लिखा जाता है जो यह जांच सकता है कि दी गई संख्या एडम नंबर है या नहीं। कोड में गोता लगाने से पहले आइए देखें कि एडम नंबर क्या है? आदम संख्या एक संख्या है मान लीजिए n, तो यदि n का वर्ग और n के विपरीत का वर्ग एक-दूसरे के विपरीत हों, तो वह संख्या आदम संख्या होती