5カードの手品には、アシスタントが表示された4枚のカードと隠されたカードをこの順番で与えるマジシャンが関与し、マジシャンは隠されたカードを推測する必要があります。
警告:以下の解決策!今すぐ出発するか、それで甘やかされてしまいます。
ソリューション
ここでのコツは、5枚のカードが特定の順序で与えられることです!
は、指定された順序の5枚のカードです。
のカード番号であるで(番号順)。
、カード番号、、整数では、カード番号に等しい右側のステップで最初に、ラッピング必要に応じ。
のスーツであるにおける(スーツオーダー)。
、カード番号とされるスーツでは、カード番号とカードを表し、とスーツ。
、及びあればカードですが、本当であるのスーツの左にある s内のスーツ"、またはそのスーツ等しいとのカード番号がの左にあるのカード"番号。
(とはカード)は、が偽の場合に真になります。
は、、、およびがカードであり、以下の表で指定される、これらの順序の順列インデックスです:
5カードの手品の解決策は問題です:
チャレンジ
ここまでは順調ですね。ただし、上記で指定した計算を実行することは、すでにここで求められています。代わりに、5枚のカードを特定の順序で指定せずに適切に注文することが課題です。これは、出力の最初の4枚のカードが5枚目を表すことを意味します。言い換えれば、アシスタントになります。要件:
- 。
- (つまり、これは可能でなければならない)。
例
setを考えてみましょう7H,2D,6D,5C,6C
。まず、25ペアを取得します。
7H,7H 7H,2D 7H,6D 7H,5C 7H,6C
2D,7H 2D,2D 2D,6D 2D,5C 2D,6C
6D,7H 6D,2D 6D,6D 6D,5C 6D,6C
5C,7H 5C,2D 5C,6D 5C,5C 5C,6C
6C,7H 6C,2D 6C,6D 6C,5C 6C,6C
次に、同じカードを2回含む5つのペアを明らかに削除します。これらは1つのデッキには存在しません。
7H,2D 7H,6D 7H,5C 7H,6C
2D,7H 2D,6D 2D,5C 2D,6C
6D,7H 6D,2D 6D,5C 6D,6C
5C,7H 5C,2D 5C,6D 5C,6C
6C,7H 6C,2D 6C,6D 6C,5C
その後、スーツは同じでなければならないので、ペアの異なるスーツはノーです:
2D、6D 6D、2D 5C、6C 6C、5C
最後に、最大6を追加して残りのペアの半分を削除することで、最初のカードから2番目のカードに到達できるかどうかを確認します。
2D、6D 5C、6C
これで、有効なペア:2D,6D
とができました5C,6C
。各ペアの最初のカードはカード1で、最後のカードはカード5です。
5C,6C
簡単にするためにここに行きます。セット全体がな7H,2D,6D,5C,6C
ので、選択したペアの2枚のカードを削除します7H,2D,6D
。これらのカードはを表す6 - 5 = 1
ため、「最小、中、最大」のように注文する必要があります。7H > 2D < 6D < 7H
、または単に2D < 6D < 7H
、だから私たちは今持ってい2D,6D,7H
ます。
最後のステップは、これらすべてをまとめること5C,2D,6D,7H,6C
です。したがって、結果はになります。
明確化
- の
10
代わりに使用できますT
。 - のいずれか
♠♥♦♣
、♤♡♢♧
またはの♠♡♢♣
代わりに使用できますCDHS
。 - これはcode-golfで、最短のコードが勝ちます。
テストケース
各テストケースに含まれる1つ以上の有効なソリューションを出力できます。
8S,TD,5C,QS,TS -> 8S,5C,QS,TD,TS
... 8S,TD,TS,5C,QS
... TS,5C,8S,TD,QS
JD,KH,4S,9D,8S -> 9D,KH,8S,4S,JD
... 4S,JD,KH,9D,8S
4H,4D,TH,KH,2C -> 4H,KH,4D,2C,TH
... TH,4D,2C,4H,KH
... KH,4D,TH,2C,4H
3S,KS,8S,KH,9H -> 9H,8S,KS,3S,KH
... 3S,KS,9H,KH,8S
... 8S,3S,9H,KH,KS
... KS,KH,9H,8S,3S
KH,TS,3C,7H,JD -> 7H,TS,JD,3C,KH
4C,KC,TD,JD,QS -> KC,JD,QS,TD,4C
... TD,4C,KC,QS,JD
AC,5H,8D,6D,8S -> 6D,AC,8S,5H,8D
AS,TC,3S,2H,9C -> 9C,2H,AS,3S,TC
... AS,9C,2H,TC,3S
4C,JS,AS,8H,JC -> JC,JS,AS,8H,4C
... JS,JC,4C,8H,AS
4H,QS,TH,QC,AC -> QC,4H,QS,TH,AC
... 4H,QS,QC,AC,TH