C プログラミングでは、配列の合計が偶数になるように配列に最小の数値を加算します。
配列が与えられた場合、配列の合計が偶数になるように、最小の数値 (0 より大きくなければなりません) を配列に追加します。
入力- 1 2 3 4.
出力- 2
説明 - 配列合計は 10 なので、
最小の数値 2 を加算して合計を均等にします。
方法 1: 配列のすべての要素の合計を計算し、その合計が偶数であるかどうかを確認し、最小数の 2 を追加し、そうでない場合は最小数の 1 を追加します。 。
入力- 1 2 3 4,
出力- 2
説明-配列の合計は 10 なので、 最小の数値 2 を加算して合計を均等にします。
例
#include<iostream> using namespace std; int main() { int arr[] = { 1, 2, 3, 4}; int n=4; int sum=0; for (int i = 0; i <n; i++) { sum+=arr[i]; } if (sum % 2==0) { cout <<"2"; } else { cout <<"1"; } return 0; }
方法 2 - 配列内の奇数要素の数を計算します。奇数の出現回数が偶数の場合は 2 を返し、それ以外の場合は 1 を返します。
入力 - 1 2 3 4 5
出力 < /strong>- 1
説明- いいえ。配列内の値は 3
最小値 1 を加算して合計を均等にします。
例
#include<iostream> using namespace std; int main() { int arr[] = { 1, 2, 3, 4,5}; int n=5; int odd = 0; for (int i = 0; i < n; i++) { if (arr[i] % 2!=0) { odd += 1; } } if (odd % 2==0) { cout <<"2"; } else { cout <<"1"; } return 0; }
メソッド 3 - フラグ変数 (0 に初期化) を受け取ります。配列内で奇数の要素が見つかった場合は常に、ブール変数に対して NOT(!) 演算を実行します。この論理演算子は、フラグ変数の値を反転します (値が 0 の場合は変数を 1 に変換し、その逆も同様です)。
入力- 1 2 3 4 5
出力- 1
説明-変数の初期化は0です。
配列を走査します p>
1 は奇数であり、変数は 1 ずつ変化します。
2 は偶数です。
3 は奇数です。変数は 0 に変わります。
4 は偶数です。
4 p>
5 は奇数です。変数は 1 になります。
変数の値が 1 の場合、それは存在することを意味します。は奇数の要素の奇数であるため、合計が偶数である要素の最小数はプラス 1 になります。
それ以外の場合、最小数量は 2 です。
例
#include<iostream> using namespace std; int main() { int arr[] = { 1, 2, 3, 4,5}; int n=5; bool odd = 0; for (int i = 0; i < n; i++) { if (arr[i] % 2!=0) { odd = !odd; } } if (odd) { cout <<"1"; } else { cout <<"2"; } return 0; }
以上が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)

ホットトピック









foreach ループを使用して PHP 配列から重複要素を削除する方法は次のとおりです。配列を走査し、要素がすでに存在し、現在の位置が最初に出現しない場合は、要素を削除します。たとえば、データベース クエリの結果に重複レコードがある場合、このメソッドを使用してそれらを削除し、重複レコードのない結果を取得できます。

PHP で配列をディープ コピーする方法には、json_decode と json_encode を使用した JSON エンコードとデコードが含まれます。 array_map と clone を使用して、キーと値のディープ コピーを作成します。シリアル化と逆シリアル化には、serialize と unserialize を使用します。

PHP の配列キー値の反転メソッドのパフォーマンスを比較すると、array_flip() 関数は、大規模な配列 (100 万要素以上) では for ループよりもパフォーマンスが良く、所要時間が短いことがわかります。キー値を手動で反転する for ループ方式は、比較的長い時間がかかります。

PHP の array_group_by 関数は、キーまたはクロージャ関数に基づいて配列内の要素をグループ化し、キーがグループ名、値がグループに属する要素の配列である連想配列を返すことができます。

PHP で配列のディープ コピーを実行するためのベスト プラクティスは、 json_decode(json_encode($arr)) を使用して配列を JSON 文字列に変換し、それから配列に戻すことです。 unserialize(serialize($arr)) を使用して配列を文字列にシリアル化し、それを新しい配列に逆シリアル化します。 RecursiveIteratorIterator を使用して、多次元配列を再帰的に走査します。

多次元配列のソートは、単一列のソートとネストされたソートに分類できます。単一列のソートでは、array_multisort() 関数を使用して列ごとにソートできますが、ネストされたソートでは、配列を走査してソートするための再帰関数が必要です。具体的な例としては、製品名による並べ替えや、売上数量や価格による化合物の並べ替えなどがあります。

PHP 配列のマージおよび重複排除アルゴリズムは、元の配列を小さなブロックに分割して並列処理する並列ソリューションを提供し、メイン プロセスは重複排除するブロックの結果をマージします。アルゴリズムのステップ: 元の配列を均等に割り当てられた小さなブロックに分割します。重複排除のために各ブロックを並行して処理します。ブロックの結果をマージし、再度重複排除します。

PHP の array_group() 関数を使用すると、指定したキーで配列をグループ化し、重複する要素を見つけることができます。この関数は次の手順で動作します。 key_callback を使用してグループ化キーを指定します。必要に応じて、value_callback を使用してグループ化値を決定します。グループ化された要素をカウントし、重複を特定します。したがって、array_group() 関数は、重複する要素を見つけて処理するのに非常に役立ちます。
