最小コイン数を見つける貪欲アルゴリズム用の C/C++ プログラム
貪欲アルゴリズムは、特定の問題に対する最適な解決策を見つけるために使用されるアルゴリズムです。貪欲アルゴリズムは、各部分の局所的な最適解 (問題の一部に対する最適解) を見つけることによって機能し、全体的な最適解が見つかることを示します。
この問題では、貪欲アルゴリズム アルゴリズムを使用して、指定された合計を構成できる最小のコイン/紙幣の数を見つけます。 このために、すべての有効な硬貨または紙幣、つまり額面 { 1、2、5、10、20、50、100、200、500、2000} を考慮します。合計を補うために必要なコイン/紙幣の数を返す必要があります。
コンテキストをよりよく理解するために、いくつかの例を示します -
例 1 -
Input : 1231 Output : 7
手順 - 500 ルピー紙幣が 2 枚必要です。 100ルピー紙幣、20ルピー紙幣1枚、10ルピー紙幣1枚、Re1コイン1枚。合計は 2 2 1 1 1 = 7
例 2 -
Input : 2150 Output : 3
手順 - 2000 ルピー紙幣 1 枚、100 ルピー紙幣 1 枚、50 ルピー紙幣 1 枚が必要です。
貪欲なアルゴリズムを使用してこの問題を解決するには、使用できる紙幣の最大額面を見つけます。次に、合計から最大額面を差し引き、合計がゼロになるまで同じプロセスを繰り返します。
アルゴリズム
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.
例
リアルタイムデモンストレーション
#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; }
出力
The minimum number of coins/notes that sum up 3253 is 2000 500 500 200 50 2 1
以上が最小コイン数を見つける貪欲アルゴリズム用の C/C++ プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

C# で貪欲アルゴリズムを実装する方法 貪欲アルゴリズム (Greedy アルゴリズム) は、一般的に使用される問題解決手法であり、毎回現在の最適解を選択して、大域的な最適解を取得することを目指します。 C# では、貪欲なアルゴリズムを使用して、多くの実際的な問題を解決できます。この記事では、C# で貪欲アルゴリズムを実装する方法を紹介し、具体的なコード例を示します。 1. 貪欲アルゴリズムの基本原理 貪欲アルゴリズムの基本的な考え方は、後続のステップの影響に関係なく、毎回現在の最適解を選択することです。このような考え方

関数 strcmp() は組み込みライブラリ関数であり、「string.h」ヘッダー ファイルで宣言されています。この関数は文字列の引数を比較するために使用されます。文字列を辞書順に比較します。つまり、両方の文字列を 1 文字ずつ比較します。comp を開始します。

貪欲なアルゴリズムを使用して、PHP で最小コイン変更問題に対する効率的な解決策を実装するにはどうすればよいでしょうか?はじめに: 日常生活では、特に買い物や取引の際に小銭が必要になることがよくあります。できるだけ少ないコインを使用するには、できるだけ少ないコインを使用して釣銭金額を組み合わせる必要があります。コンピューター プログラミングでは、貪欲なアルゴリズムを使用してこの問題を解決し、効率的な解決策を得ることができます。この記事では、PHP で貪欲アルゴリズムを使用して最小コイン両替問題に対する効率的な解決策を達成する方法を紹介し、対応するコード例を示します。

Ford-Fulkerson アルゴリズムは、ネットワーク内の最大流量を計算するために使用される貪欲なアルゴリズムです。原則として、正の残存容量を持つ増強パスを見つけることです。増強パスが見つかる限り、パスの追加とトラフィックの計算を続行できます。増加経路が存在しなくなるまで、最大流量を得ることができます。 Ford-Fulkerson アルゴリズムの残りの容量という用語は、容量からトラフィックを差し引くことを意味し、Ford-Fulkerson アルゴリズムでは、パスとして引き続き使用できるようになるまでの残りの容量は正の数になります。残余ネットワーク: 残余容量を容量として使用する、同じ頂点と辺を持つネットワークです。拡張パス: 残差グラフ内のソース ポイントから受信ポイントまでのパスであり、最終容量は 0 です。 Ford-Fulkerson アルゴリズムの原理例の考えられる概要

fseek() は、ファイル ポインタを特定の場所に移動するために C 言語で使用されます。オフセットとストリームはポインターのターゲットであり、関数の引数で指定されます。成功した場合はゼロを返します。失敗した場合は、ゼロ以外の値が返されます。以下は、C 言語の fseek() の構文です。 intfseek(FILE*stream,longintoffset,intwhence) fseek() で使用されるパラメーターは次のとおりです。 stream- これは、ストリームを識別するために使用されるポインターです。 offset -これは位置からのバイト数です。 wherece - ここにオフセットが追加されます。 wherece は次の定数で与えられます

Python を使用して貪欲アルゴリズムを実装するにはどうすればよいですか?貪欲アルゴリズムは、最適な下部構造特性を使用して問題を解決するのに適したシンプルで効果的なアルゴリズムです。選択の各ステップで現在の状態で最善の選択を行い、全体的な最適な解決策を見つけることを期待します。この記事では、Python を使用して貪欲アルゴリズムを実装する方法を、具体的なコード例とともに紹介します。 1. グリーディ アルゴリズムの基本的な考え方 グリーディ アルゴリズムの基本的な考え方は、各ステップで現状の最適解を選択し、

PHP を使用して貪欲アルゴリズムを作成する方法 貪欲アルゴリズム (貪欲アルゴリズム) は、一種の最適化問題を解決するために使用されるシンプルで効果的なアルゴリズムです。その基本的な考え方は、将来の結果を考慮せずに、現時点で最善と思われる選択を各ステップで行うことです。この記事では、PHP を使用して貪欲なアルゴリズムを作成する方法を紹介し、関連するコード例を示します。 1. 問題の説明 貪欲アルゴリズムを説明する前に、理解を深めるために、まず特定の問題を定義しましょう。一連のタスクがあり、各タスクに開始点があるとします。

貪欲アルゴリズムは一般的に使用されるアルゴリズムのアイデアであり、多くの問題で広く使用されています。基本的な考え方は、各ステップで意思決定を行う際に、長期的な影響を考慮せず、当面の最適なソリューションのみを考慮することです。 C++ では、貪欲アルゴリズムの実装には、ソートやデータ処理などの基本操作が含まれることがよくあります。以下では、いくつかの典型的な問題に対する貪欲アルゴリズムの考え方と C++ での実装を紹介します。 1. アクティビティのスケジュール設定の問題 一連のアクティビティが与えられると、各アクティビティには開始時間と終了時間があり、人は一度に 1 つのアクティビティのみに参加できます。
