Những con số dễ nhớ nhưng về mặt lý thuyết không dễ thực hiện
Thách thức của bạn là tạo ra một chương trình / chức năng bằng bất kỳ ngôn ngữ nào tạo ra các số ngẫu nhiên thống nhất phù hợp với các tiêu chí sau:
Độ dài là 5 chữ số
Có hai cặp chữ số lặp lại riêng biệt
Một tập hợp các chữ số lặp lại ở đầu hoặc cuối và các chữ số nằm cạnh nhau
Số lẻ được bao quanh bởi các cặp chữ số khác
Các cặp hai chữ số và số khác phải là duy nhất
Chương trình của bạn có thể hỗ trợ các số có số 0 đứng đầu hay không, tùy ý bạn. Nếu các số 0 hàng đầu được hỗ trợ, chúng phải được bao gồm trong đầu ra: 06088, không phải 6088. Nếu các số 0 hàng đầu không được hỗ trợ, thì không nên tạo các số như 06088.
Các trường hợp thử nghiệm
Đầu ra được chấp nhận:
55373 55494 67611 61633 09033 9957 95944 22809 65622 22161
Đầu ra không được chấp nhận:
55555 77787 85855 12345 99233 12131 abcde 5033
Các trường hợp thử nghiệm được chấp nhận hơn có thể được tìm thấy tại liên kết pastebin này .
Chúng được tạo ra với chương trình python này:
nhập ngẫu nhiên cho tôi trong phạm vi (100): if Random.randint (0,100)> = 50: #Put cặp chạm lúc đầu nếu đúng temp = [] # làm việc mảng temp.append (Random.randint (0,9)) #append chữ số ngẫu nhiên temp.append (temp [0]) #append cùng một chữ số một lần nữa x = ngẫu nhiên.randint (0,9) trong khi x == temp [0]: x = ngẫu nhiên.randint (0,9) temp.append (x) #append một chữ số duy nhất khác y = ngẫu nhiên.randint (0,9) trong khi y == temp [0] hoặc y == temp [2]: y = ngẫu nhiên.randint (0,9) temp.append (y) #append một chữ số duy nhất khác và chữ số duy nhất trước đó temp.append (x) khác: #Put chạm vào cuối temp = [] # làm việc mảng temp.append (Random.randint (0,9)) #append chữ số ngẫu nhiên # Trong khi không phải là duy nhất, hãy thử lại x = ngẫu nhiên.randint (0,9) trong khi x == temp [0]: x = ngẫu nhiên.randint (0,9) temp.append (x) #append một chữ số duy nhất khác temp.append (temp [0]) #append cùng chữ số 0 lần nữa y = ngẫu nhiên.randint (0,9) trong khi y == temp [0] hoặc y == temp [1]: y = ngẫu nhiên.randint (0,9) temp.append (y) #append một chữ số duy nhất khác hai lần temp.append (y) tempstr = "" cho tôi trong temp: tempstr + = str (i) in tempstr
Đây là môn đánh gôn , vì vậy câu trả lời ngắn nhất bằng byte thắng!
random
không có nghĩa là thống nhất như vậy