Inhaltsverzeichnis
Beispiel
Algorithmus
Ausgabe
Heim Backend-Entwicklung C++ C/C++-Programm für einen gierigen Algorithmus zum Ermitteln der Mindestanzahl an Münzen

C/C++-Programm für einen gierigen Algorithmus zum Ermitteln der Mindestanzahl an Münzen

Sep 19, 2023 pm 11:01 PM
贪心算法 c/c Mindestanzahl an Münzen

C/C++-Programm für einen gierigen Algorithmus zum Ermitteln der Mindestanzahl an Münzen

Der Greedy-Algorithmus ist ein Algorithmus, der verwendet wird, um die optimale Lösung für ein bestimmtes Problem zu finden. Der Greedy-Algorithmus funktioniert, indem er für jeden Teil eine lokal optimale Lösung findet (die optimale Lösung für einen Teil des Problems) und zeigt so, dass eine globale optimale Lösung gefunden werden kann.

In diesem Problem verwenden wir den Greedy-Algorithmus, um die Mindestanzahl an Münzen/Banknoten zu ermitteln, die eine bestimmte Summe bilden können. Dabei berücksichtigen wir alle gültigen Münzen oder Banknoten, also die Stückelungen { 1, 2, 5, 10, 20, 50, 100, 200, 500, 2000}. Wir müssen die Anzahl Münzen/Banknoten zurückgeben, die für die Summe erforderlich sind.

Lassen Sie uns ein paar Beispiele geben, um den Kontext besser zu verstehen –

Beispiel 1 –

Input : 1231
Output : 7
Nach dem Login kopieren

Erklärung – Wir benötigen zwei 500-Rupien-Scheine, zwei 100-Rupien-Scheine, einen 20-Rupien-Schein, einen 10-Rupien-Schein, Rupien-Banknoten und eine Re 1-Münze. Die Summe ist 2+2+1+1+1 = 7

Beispiel 2 –

Input : 2150
Output : 3
Nach dem Login kopieren

Anleitung – Wir benötigen einen 2000-Rs-Schein, einen 100-Rs-Schein und einen 50-Rs-Schein.

Um dieses Problem mithilfe eines Greedy-Algorithmus zu lösen, ermitteln wir die Banknote mit dem größten Nennwert, die verwendet werden kann. Anschließend subtrahieren wir den maximalen Nennwert von der Summe und wiederholen den gleichen Vorgang, bis die Summe Null ist.

Algorithmus

Input: sum,
Initialise the coins = 0
Step 1: Find the largest denomination that can be used i.e. smaller than sum.
Step 2: Add denomination two coins and subtract it from the Sum
Step 3: Repeat step 2 until the sum becomes 0.
Step 4: Print each value in coins.
Nach dem Login kopieren

Beispiel

Echtzeitdemonstration

#include <bits/stdc++.h>
using namespace std;
int notes[] = { 1, 2, 5, 10, 20, 50, 100, 200, 500, 2000 };
int n = sizeof(notes) / sizeof(notes[0]);
void minchange(int sum){
   vector<int> coins;
   for (int i = n - 1; i >= 0; i--) {
      while (sum >= notes[i]) {
         sum -= notes[i];
         coins.push_back(notes[i]);
      }
   }
   for (int i = 0; i < coins.size(); i++)
      cout << coins[i] << "\t";
}
int main(){
   int n = 3253;
   cout << "The minimum number of coins/notes that sum up " << n << " is \t ";
   minchange(n);
   return 0;
}
Nach dem Login kopieren

Ausgabe

The minimum number of coins/notes that sum up 3253 is
2000 500 500 200 50 2 1
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonC/C++-Programm für einen gierigen Algorithmus zum Ermitteln der Mindestanzahl an Münzen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So implementieren Sie einen Greedy-Algorithmus in C# So implementieren Sie einen Greedy-Algorithmus in C# Sep 19, 2023 am 11:48 AM

So implementieren Sie den Greedy-Algorithmus in C# Der Greedy-Algorithmus (Greedy-Algorithmus) ist eine häufig verwendete Methode zur Problemlösung. Er wählt jedes Mal die aktuell optimale Lösung aus, in der Hoffnung, die globale optimale Lösung zu erhalten. In C# können wir Greedy-Algorithmen verwenden, um viele praktische Probleme zu lösen. In diesem Artikel wird die Implementierung des Greedy-Algorithmus in C# vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Grundprinzipien des Greedy-Algorithmus Die Grundidee des Greedy-Algorithmus besteht darin, jedes Mal die aktuell optimale Lösung auszuwählen, unabhängig von den möglichen Auswirkungen nachfolgender Schritte. Diese Art des Denkens

Wie implementiert man mithilfe eines Greedy-Algorithmus eine effiziente Lösung für das Problem des geringsten Münzwechsels in PHP? Wie implementiert man mithilfe eines Greedy-Algorithmus eine effiziente Lösung für das Problem des geringsten Münzwechsels in PHP? Sep 19, 2023 am 10:22 AM

Wie implementiert man mithilfe des Greedy-Algorithmus eine effiziente Lösung für das Problem des geringsten Münzwechsels in PHP? Einleitung: Im täglichen Leben müssen wir oft Veränderungen vornehmen, insbesondere beim Einkaufen oder Handeln. Um möglichst wenig Münzen zu verbrauchen, sollte der Wechselbetrag mit möglichst wenigen Münzen zusammengefasst werden. In der Computerprogrammierung können wir einen gierigen Algorithmus verwenden, um dieses Problem zu lösen und eine effiziente Lösung zu erhalten. In diesem Artikel wird erläutert, wie Sie mit dem Greedy-Algorithmus in PHP eine effiziente Lösung für das Problem des minimalen Münzwechsels erreichen, und entsprechende Codebeispiele bereitstellen.

In C/C++ wird die Funktion strcmp() zum Vergleichen zweier Zeichenfolgen verwendet In C/C++ wird die Funktion strcmp() zum Vergleichen zweier Zeichenfolgen verwendet Sep 10, 2023 am 11:41 AM

Die Funktion strcmp() ist eine integrierte Bibliotheksfunktion und wird in der Headerdatei „string.h“ deklariert. Diese Funktion wird zum Vergleichen der Zeichenfolgenargumente verwendet. Sie vergleicht Zeichenfolgen lexikografisch, was bedeutet, dass sie beide Zeichenfolgen Zeichen für Zeichen vergleicht. Sie startet comp

Analysieren Sie den Ford-Fulkerson-Algorithmus und implementieren Sie ihn über Python Analysieren Sie den Ford-Fulkerson-Algorithmus und implementieren Sie ihn über Python Jan 22, 2024 pm 08:09 PM

Der Ford-Fulkerson-Algorithmus ist ein Greedy-Algorithmus zur Berechnung der maximalen Durchflussrate in einem Netzwerk. Das Prinzip besteht darin, einen Erweiterungspfad mit einer positiven Restkapazität zu finden. Solange der Erweiterungspfad gefunden wird, können Sie weiterhin Pfade hinzufügen und den Verkehr berechnen. Bis der Verstärkungspfad nicht mehr vorhanden ist, kann die maximale Durchflussrate erreicht werden. Der Begriff „Restkapazität“ des Ford-Fulkerson-Algorithmus besteht darin, den Fluss von der Kapazität zu subtrahieren. Beim Ford-Fulkerson-Algorithmus ist die verbleibende Kapazität eine positive Zahl, bevor sie weiterhin als Pfad verwendet werden kann. Restnetzwerk: Es handelt sich um ein Netzwerk mit denselben Scheitelpunkten und Kanten, das die Restkapazität als Kapazität verwendet. Erweiterter Pfad: Dies ist der Pfad vom Quellpunkt zum Empfangspunkt im Restdiagramm mit einer Endkapazität von 0. Ein möglicher Überblick über das Prinzip des Ford-Fulkerson-Algorithmus, Beispiel

In C/C++ wird die Funktion fseek() verwendet, um die Position des Dateizeigers in der Datei zu verschieben. In C/C++ wird die Funktion fseek() verwendet, um die Position des Dateizeigers in der Datei zu verschieben. Sep 02, 2023 pm 03:57 PM

fseek() wird in der C-Sprache verwendet, um den Dateizeiger an einen bestimmten Ort zu verschieben. Offsets und Streams sind die Ziele von Zeigern und werden in Funktionsargumenten angegeben. Bei Erfolg wird Null zurückgegeben. Wenn dies nicht gelingt, wird ein Wert ungleich Null zurückgegeben. Das Folgende ist die Syntax von fseek() in der C-Sprache: intfseek(FILE*stream,longintoffset,intwhence) Hier sind die in fseek() verwendeten Parameter: stream− Dies ist der Zeiger, der zur Identifizierung des Streams verwendet wird. offset - Dies ist die Anzahl der Bytes ab der Position. wherece-Hier wird der Offset hinzugefügt. woher wird durch die folgenden Konstanten gegeben

Wie implementiert man einen gierigen Algorithmus mit Python? Wie implementiert man einen gierigen Algorithmus mit Python? Sep 19, 2023 am 11:43 AM

Wie implementiert man einen gierigen Algorithmus mit Python? Der Greedy-Algorithmus ist ein einfacher und effektiver Algorithmus, der sich zur Lösung von Problemen mit optimalen Unterstruktureigenschaften eignet. In jedem Auswahlschritt wird die aktuell beste Wahl getroffen, in der Hoffnung, die global optimale Lösung zu finden. In diesem Artikel stellen wir anhand spezifischer Codebeispiele vor, wie Python zum Implementieren des Greedy-Algorithmus verwendet wird. 1. Die Grundidee des Greedy-Algorithmus Die Grundidee des Greedy-Algorithmus besteht darin, in jedem Schritt die optimale Lösung im aktuellen Zustand auszuwählen und dann

Wie schreibe ich einen Greedy-Algorithmus mit PHP Wie schreibe ich einen Greedy-Algorithmus mit PHP Jul 07, 2023 pm 03:45 PM

So schreiben Sie mit PHP einen Greedy-Algorithmus. Der Greedy-Algorithmus (Greedy-Algorithmus) ist ein einfacher und effektiver Algorithmus, der zur Lösung einer Art Optimierungsproblem verwendet wird. Die Grundidee besteht darin, bei jedem Schritt die Wahl zu treffen, die im Moment am besten erscheint, ohne Rücksicht auf zukünftige Konsequenzen. In diesem Artikel wird vorgestellt, wie man mit PHP einen Greedy-Algorithmus schreibt, und relevante Codebeispiele bereitgestellt. 1. Problembeschreibung Bevor wir den Greedy-Algorithmus erklären, definieren wir zum besseren Verständnis zunächst ein spezifisches Problem. Angenommen, es gibt eine Reihe von Aufgaben, jede Aufgabe hat einen Anfang

Greedy-Algorithmus und seine Implementierung in C++ Greedy-Algorithmus und seine Implementierung in C++ Aug 22, 2023 am 10:04 AM

Der Greedy-Algorithmus ist eine häufig verwendete Algorithmusidee und wird häufig bei vielen Problemen eingesetzt. Der Kerngedanke besteht darin, bei der Entscheidungsfindung in jedem Schritt nur die unmittelbar optimale Lösung zu berücksichtigen, ohne die langfristigen Auswirkungen zu berücksichtigen. In C++ umfasst die Implementierung gieriger Algorithmen häufig grundlegende Operationen wie Sortieren und Datenverarbeitung. Im Folgenden stellen wir die Idee des Greedy-Algorithmus und seine Implementierung in C++ für mehrere typische Probleme vor. 1. Aktivitätsplanungsproblem Bei einer Reihe von Aktivitäten hat jede Aktivität ihre Start- und Endzeit, und eine Person kann jeweils nur an einer Aktivität teilnehmen.

See all articles