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

C# में टॉप-डाउन दृष्टिकोण का उपयोग करके कॉइन चेंज समस्या को कैसे लागू करें?


CoinChangeTopDownApproach चार पैरामीटर लेता है: n राशि है, coins ऐरे में वे सिक्के होते हैं जिनसे राशि की गणना की जानी है, t सिक्कों की कुल संख्या है, dp ऐरे सभी पूर्व-गणना किए गए मानों को संग्रहीत करेगा। यदि राशि 0 है तो 0 लौटाएं। यदि मान पहले से गणना किया गया है तो dp ऐरे से लौटाएं। यदि मान गणना नहीं किया गया है तो CoinChangeTopDownApproach को पुनरावर्ती रूप से कॉल करें।

समय जटिलता − O(N)

स्पेस जटिलता − O(N)

उदाहरण

public class DynamicProgramming{    public int CoinChangeTopDownApproach(int n,int[] coins,int t,int[] dp){       if (n == 0){          return 0;       }       if (dp[n] != 0){          return dp[n];       }       int ans = int.MaxValue;       for (int i = 0; i < t; i++){          if (n - coins[i] >= 0){             int subprob = CoinChangeTopDownApproach(n - coins[i], coins, t, dp);             ans = Math.Min(ans, subprob + 1);       }    }    dp[n] = ans;    return dp[n];    } } static void Main(string[] args){    DynamicProgramming dp = new DynamicProgramming();    int N = 15;    int[] coins = { 1, 7, 10 };    int[] dp1 = new int[100];    int t = coins.Count();    int res = dp.CoinChangeTopDownApproach(15, coins, t, dp1);    Console.WriteLine(res); }

आउटपुट

3
  1. OpenCV में C++ का उपयोग करके कंट्रास्ट कैसे बदलें OpenCV में C++ का उपयोग करके कंट्रास्ट कैसे बदलें

    चमक और कंट्रास्ट बदलना छवि प्रसंस्करण में लगातार संपादन प्रभाव हैं। यहाँ, हम सीखेंगे कि छवियों का कंट्रास्ट कैसे बदलें। कंट्रास्ट छवि की तीक्ष्णता को नियंत्रित करता है। कंट्रास्ट जितना अधिक होगा, छवि उतनी ही तीक्ष्ण होगी, कंट्रास्ट जितना कम होगा, छवि उतनी ही चिकनी होगी।कंट्रास्ट बदलने का अर्थ है पिक

  1. C++ में new का उपयोग करके 2D ऐरे कैसे घोषित करें C++ में new का उपयोग करके 2D ऐरे कैसे घोषित करें

    एक डायनामिक 2D ऐरे मूल रूप से ऐरे के पॉइंटर्स का ऐरे होता है। यहां 3 x 4 आयाम वाले 2D ऐरे का एक आरेख है। एल्गोरिदम Begin ऐरे के आयाम घोषित करें। new का उपयोग करके 2D ऐरे a[][] को डायनामिक रूप से आवंटित करें। ऐरे को तत्वों से भरें। ऐरे प्रिंट करें। इसे हटाकर मेमोरी साफ़ करें। End

  1. Java 9 में JavaFX का उपयोग करके JShell को प्रोग्रामेटिक रूप से लागू करें Java 9 में JavaFX का उपयोग करके JShell को प्रोग्रामेटिक रूप से लागू करें

    Java 9 ने jdk.jshell API पेश किया जो डेवलपर्स को अपने एप्लिकेशन में JShell कार्यक्षमता को एम्बेड करने की अनुमति देता है। यह लेख दिखाता है कि एक JavaFX एप्लिकेशन कैसे बनाया जाए जो JShell का उपयोग करके कोड स्निपेट्स का मूल्यांकन करता है और परिणाम प्रदर्शित करता है। आवश्यक निर्भरताएं Java 9+ (JSh