私は難しい作業に悩まされています。コードが非常に乱雑で、多くのforeachループがなければ解決できません。配列を整列して重複した値を削除する
これは基本的なロジックです:
だけ唯一の男がピザを持つことができるので、一つだけの男が、パスタなどを持つことができます。しかし、彼らは、複数の食品を持つことができ、配列内のユニークな食品が存在する場合があります。そして、配列の中で最も食べ物の多い人は、食糧の少ないものよりも食べ物を勝ち取るべきです。
Johnは、JoeまたはConnyのいずれかにhisがあるので、配列から削除する必要があります。
ジョーとコンニーは同じ量の食べ物を持っているので、そのうちの1つはすべての食品を保持し、もう1つは配列から削除する必要があり、ジョーかコニーかどうかはランダムに選択する必要があります。
開始配列は次のようになります。
Array
(
[Joe] => Array
(
[0] => Pizza
[1] => Pasta
[2] => Lasagne
[3] => Tacos
[4] => Hamburger
)
[Conny] => Array
(
[0] => Pizza
[1] => Pasta
[2] => Lasagne
[3] => Tacos
[4] => Hamburger
)
[John] => Array
(
[0] => Pizza
[1] => Pasta
)
[Fred] => Array
(
[0] => Pizza
[1] => Pasta
[2] => Soup
[3] => Fish
)
[Greg] => Array
(
[0] => Sushi
)
)
そして私が望む最終的な結果は次のとおりです。
Array
(
[Joe] => Array
(
[0] => Pizza
[1] => Pasta
[2] => Lasagne
[3] => Tacos
[4] => Hamburger
)
[Fred] => Array
(
[2] => Soup
[3] => Fish
)
[Greg] => Array
(
[0] => Sushi
)
)
配列にし、二つ以上の人が同じを持っている場合は左だけそう独特の食べ物それは、これらが食品を保持すべきかどうかを無作為に選ぶべきです。
どのように私はこれを行うことができますか?
コードを表示します。これはちょうど配列です –
私はかなり多くのコードを持っていないので、どこから始めたらいいのか分かりません。 – user1878980