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

C++ में सभी बिंदुओं पर जाने का न्यूनतम समय

मान लीजिए कि कुछ बिंदु एक सरणी के रूप में दिए गए हैं। हमें सभी बिंदुओं पर जाने के लिए सेकंड में न्यूनतम समय निकालना होगा। कुछ शर्तें हैं।

  • एक सेकंड में, यह लंबवत, क्षैतिज और तिरछे गति कर सकता है
  • हमें बिंदुओं को उसी क्रम में देखना है जैसे वे सरणी में दिखाई देते हैं।

तो यदि अंक [(1, 1), (3, 4), (-1, 0)] हैं, तो आउटपुट 7 होगा। यदि हम सबसे छोटे मार्ग के लिए अनुक्रम की जांच करते हैं, तो अनुक्रम होगा (1, 1 ), (2, 2), (3, 3), (3, 4), (2, 3), (1, 2), (0, 1), (-1, 0)

इसे हल करने के लिए हम केवल दो लगातार बिंदुओं के अधिकतम x निर्देशांक अंतर और y लगातार दो बिंदुओं के अंतर को समन्वयित करेंगे। अधिकतम मान एक साथ जोड़े जाएंगे।

उदाहरण

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

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
      int minTimeToVisitAllPoints(vector<vector<int>>& p) {
         int ans = 0;
         int n = p.size();
         for(int i = 1; i < n; i++){
            ans += max(abs(p[i][0] - p[i-1][0]), abs(p[i][1] - p[i-1] [1]));
         }
         return ans;
      }
};
main(){
   Solution ob;
   vector<vector<int>> c = {{1,1},{3,4},{-1,0}};
   cout << ob.minTimeToVisitAllPoints(c);
}

इनपुट

[[1,1],[3,4],[-1,0]]

आउटपुट

7

  1. सी++ में एक पेड़ में सभी सेबों को इकट्ठा करने का न्यूनतम समय सी++ में एक पेड़ में सभी सेबों को इकट्ठा करने का न्यूनतम समय

    मान लीजिए कि हमारे पास एक अप्रत्यक्ष पेड़ है जिसमें n शीर्ष हैं और इनकी संख्या 0 से n-1 तक है, जिसके शीर्षों में कुछ सेब हैं। हम पेड़ के एक किनारे पर चलने में 1 सेकंड खर्च करते हैं। पेड़ में सभी सेबों को शीर्ष 0 से शुरू करने और इस शीर्ष पर वापस आने के लिए हमें सेकंड में न्यूनतम समय निकालना होगा। यह

  1. C++ में न्यूनतम नाइट मूव्स C++ में न्यूनतम नाइट मूव्स

    मान लीजिए कि हमारे पास एक अनंत शतरंज की बिसात है जिसमें -infinity से +infinity तक के निर्देशांक हैं, और हमारे पास वर्ग [0, 0] पर एक नाइट है। एक शूरवीर के पास 8 संभावित चालें हैं, जैसा कि नीचे दिखाया गया है। प्रत्येक चाल एक कार्डिनल दिशा में दो वर्ग है, फिर एक वर्ग एक ओर्थोगोनल दिशा में है। हमें न

  1. C++ में सभी कर्मचारियों को सूचित करने के लिए आवश्यक समय C++ में सभी कर्मचारियों को सूचित करने के लिए आवश्यक समय

    मान लीजिए कि हमारे पास एक कंपनी है जिसमें प्रत्येक कर्मचारी के लिए एक विशिष्ट आईडी के साथ n कर्मचारी हैं। ये आईडी 0 से n - 1 तक होती हैं। कंपनी का मुखिया हेडआईडी वाला होता है। प्रत्येक कर्मचारी के पास प्रबंधक सरणी में दिया गया एक प्रत्यक्ष प्रबंधक होता है जहां प्रबंधक [i] i-वें कर्मचारी का प्रत्यक्ष