Khái niệm
Bằng cách nào bạn có thể xáo trộn bảng chữ cái tiếng Anh để nó vẫn có thể được hát theo giai điệu Twinkle Twinkle Little Star mà không làm hỏng giai điệu?
Quy tắc
Trao đổi
Giả sử các chữ cái trong mỗi bộ sau đây có thể được hoán đổi tự do mà không làm hỏng giai điệu:
- {A, J, K}
- {B, C, D, E, G, P, T, V, Z}
- {Tôi, Y}
- {Q, U}
- {S, X, F}
- {M, N}
- Do đó, H, L, O, R và W bị khóa tại chỗ
Đầu ra
Chương trình cần xuất ra một chuỗi RANDOM (hoặc danh sách các ký tự) có chứa bảng chữ cái tiếng Anh hoàn chỉnh theo bất kỳ thứ tự nào với điều kiện là thứ tự đó thỏa mãn các điều kiện trên. Không có cách nào để bạn dự đoán chuỗi nào chương trình của bạn sẽ xuất ra (nếu chúng tôi bỏ qua việc gieo hạt), có nghĩa là bạn không thể mã hóa chuỗi đó.
Chương trình của bạn phải có một số xác suất dương (không nhất thiết phải thống nhất) để tạo ra mỗi trong số đầu ra.
Không có hạn chế định dạng cụ thể về khoảng cách, dấu phân cách hoặc trường hợp, chỉ cần nhất quán.
Mục tiêu
Ít byte nhất sẽ thắng!
Ví dụ:
- KCDBPSVHIAJLMNOZQRXGUEWFYT
- A, G, Z, V, P, X, C, H, Y, K, J, L, N, M, O, T, U, R, S, D, Q, B, W, F, I, E
- KVTDCFBHIJALNMOPURSZQGWXYE
- jcdebxthikalnmogursvq pwfyz
- ABCDEFGHIJKLMNOPQRSTUVWXYZ
Không có mẫu nào:
- HLWROABCDEFZXYGIJKMNPQTSVU
Bằng chứng về khái niệm: (Python3, 529 byte)
import random
g1 = ['A', 'J', 'K']
g2 = ['B', 'C', 'D', 'E', 'G', 'P', 'T', 'V', 'Z']
g3 = ['I', 'Y']
g4 = ['Q', 'U']
g5 = ['S', 'X', 'F']
g6 = ['M', 'N']
random.shuffle(g1)
random.shuffle(g2)
random.shuffle(g3)
random.shuffle(g4)
random.shuffle(g5)
random.shuffle(g6)
print(g1[0] + g2[0] + g2[1] + g2[2] + g2[3] + g5[0] + g2[4] + 'H' + g3[0] + g1[1] + g1[2] + 'L' + g6[0] + g6[1] + 'O' + g2[5] + g4[0] + 'R' + g5[1] + g2[6] + g4[1] + g2[7] + 'W' + g5[2] + g3[1] + g2[8])
Z
"khóa tại chỗ", nó không vần với những người khác?