Thủ thuật đánh bài ma thuật đầu tiên tôi từng học khi còn nhỏ là:
- Có 1 cỗ bài trong đó hoa văn ở mặt sau không đối xứng theo chiều dọc.
- Tổ chức tất cả các thẻ để được đối mặt với một hướng.
- Yêu cầu một cá nhân, "chọn một thẻ, bất kỳ thẻ nào, ghi nhớ nó và trả lại cho bạn".
- Tiến hành đặt nó vào boong (sai hướng).
- Xáo trộn mạnh mẽ, tạo ảo giác rằng bạn sẽ không biết thẻ của họ ở đâu.
- Sản xuất thẻ của họ đến kinh ngạc của họ.
Thủ thuật này rõ ràng là một chút thiếu ánh sáng trong tự nhiên ngày nay, tuy nhiên nó làm cho một thách thức tốt. Viết một chương trình, khi không có đầu vào, sẽ tạo ra một cỗ bài được xáo trộn ngẫu nhiên với một trong các thẻ, được chọn ngẫu nhiên, đảo ngược. Tuy nhiên, khi đầu vào là một cỗ bài có một thẻ bị đảo ngược, bạn phải xuất ra thẻ đảo ngược (theo đúng thứ tự).
Bộ bài
Một bộ bài được định nghĩa là:
[2S,3S,4S,5S,6S,7S,8S,9S,TS,JS,QS,KS,AS,
2D,3D,4D,5D,6D,7D,8D,9D,TD,JD,QD,KD,AD,
2H,3H,4H,5H,6H,7H,8H,9H,TH,JH,QH,KH,AH,
2C,3C,4C,5C,6C,7C,8C,9C,TC,JC,QC,KC,AC]
Một thẻ được định nghĩa là số của nó, sau đó là chữ cái đầu tiên của bộ đồ. Mặt trái của thẻ hoàn toàn ngược lại, chữ cái đầu tiên của bộ đồ theo sau là một số.
Thẻ rút
Ví dụ: nếu thẻ chúng tôi chọn ngẫu nhiên đảo ngược là 4 of Clubs (4C)
, chúng tôi sẽ kết thúc (rõ ràng là không xáo trộn):
[2S,3S,4S,5S,6S,7S,8S,9S,TS,JS,QS,KS,AS,
2D,3D,4D,5D,6D,7D,8D,9D,TD,JD,QD,KD,AD,
2H,3H,4H,5H,6H,7H,8H,9H,TH,JH,QH,KH,AH,
2C,3C,C4,5C,6C,7C,8C,9C,TC,JC,QC,KC,AC]
Sự xáo trộn
Sau đó, sau khi xáo trộn:
[2H,2C,6S,4D,QH,6C,TD,8C,7H,5H,C4,3D,7S,7C,KC,QD,QC,JS,7D,6D,2S,5C,KD,3C,3S,2D,8H,KH,6H,AH,8S,JH,TS,AD,5D,9H,4H,JD,QS,4S,JC,3H,8D,TC,AS,TH,KS,AC,9C,9S,5S,9D]
Đây là một đầu ra hợp lệ cho đầu vào trống.
Đầu vào sàn
Tuy nhiên, ngược lại, khi chương trình của chúng tôi nhận đầu ra ở trên làm đầu vào, nó sẽ xuất ra 4C
. Điều đó có nghĩa là, đối với đầu vào của:
[2H,2C,6S,4D,QH,6C,TD,8C,7H,5H,C4,3D,7S,7C,KC,QD,QC,JS,7D,6D,2S,5C,KD,3C,3S,2D,8H,KH,6H,AH,8S,JH,TS,AD,5D,9H,4H,JD,QS,4S,JC,3H,8D,TC,AS,TH,KS,AC,9C,9S,5S,9D]
Bạn lặp đi lặp lại cho đến khi bạn tìm thấy thẻ đảo ngược và trả lại, đảo ngược trở lại trạng thái bình thường. Vì vậy, ở đây chúng tôi tìm thấy C4
, biết rằng C không phải là một số và trả về nó 4C
là đúng.
Quy tắc
- Bạn không thể tải bộ bài từ bất kỳ nguồn bên ngoài.
- Một đầu vào trống sẽ dẫn đến một cỗ bài được xáo trộn ngẫu nhiên với 1 thẻ ngẫu nhiên được đảo ngược.
- Bộ bài có 1 thẻ được đảo ngược làm đầu vào sẽ dẫn đến thẻ bị đảo ngược.
- Bất kỳ đầu vào nào khác có thể dẫn đến llamas nổ đi xe đạp thông qua một ống tương lai.
- Hoặc bất cứ điều gì khác cho vấn đề đó.
- Cả hai thẻ được chọn và thứ tự xáo trộn phải được thống nhất ngẫu nhiên.
- IE tất cả các thẻ có cơ hội bình đẳng được chọn để được đảo ngược.
- IE tất cả các kết hợp thẻ có cơ hội xuất hiện như nhau.
- Bạn có thể sử dụng
SHCD
hoặcshcd
cho các bộ quần áo, nhưng phải nhất quán:- Nếu bạn chọn bộ chữ hoa (
SHCD
) bạn cũng phải sử dụngTJQKA
. - Nếu bạn chọn phù hợp với chữ thường (
shcd
) bạn cũng phải sử dụngtjqka
.
- Nếu bạn chọn bộ chữ hoa (
- Đây là mã golf , người chiến thắng là byte thấp nhất.