Thử thách
Đối với mỗi ký tự của chuỗi ngoại trừ ký tự cuối cùng, hãy làm như sau:
Xuất ký tự hiện tại.
Tiếp theo là xuất ngẫu nhiên từ danh sách sau đây một số lần ngẫu nhiên trong khoảng từ 1 đến 5 (bao gồm):
- Nhân vật hiện tại
- Ký tự tiếp theo của chuỗi
- Phiên bản tổng đài của nhân vật mà bạn hiện đang ở
- Phiên bản tổng đài của ký tự tiếp theo của chuỗi.
Các trường hợp thử nghiệm
String
-> SSSTSStrTrIiinIIngn
, . , . , . Hello world!
-> ,,, .. , ,, .... , , .. .. . HHH HHEeelLlLllooO wwOworOOrrrRllDd!!D
Programming Puzzles and Code Golf
-> PrPPrRrOooooogggRgGraAraaaMMMmmmimMIiininGGgG PPPPuZzZZzZzzZzllLLEEeEsEsssS a aANnNddD C COCoooOOdeDe E GGGoOllFFf
Ghi chú
- Bạn chỉ cần áp dụng phiên bản tổng đài của một ký tự nếu ký tự là một phần của bảng chữ cái (AZ và az).
- Hàm ngẫu nhiên của bạn không cần phải đồng nhất nhưng nó vẫn cần có cơ hội trả về bất kỳ phần tử nào trong danh sách đã cho.
- Bạn được phép sử dụng bất kỳ định dạng I / O tiêu chuẩn nào.
- Bạn có thể cho rằng độ dài của đầu vào lớn hơn hoặc bằng hai.
- Bạn có thể cho rằng đầu vào chỉ bao gồm các ký tự ASCII.
- Tiêu đề không phải là một trường hợp thử nghiệm (nó là vô ý nếu nó là một trường hợp thử nghiệm hợp lệ).
- Switchcase có nghĩa là biến char thành chữ thường nếu nó là chữ hoa và để biến nó thành chữ hoa nếu nó là chữ thường.
String
sản xuấtSSSTSStrTrIiinIIngn
[S]SSTSS [t]rT, [r]I, [i]inII, [n]gn
, trong đó các ký tự giữa các khối là các dấu đầu dòng đầu tiên (" Xuất ký tự hiện tại ") và các ký tự khác là 1-5 lần ngẫu nhiên một trong bốn lựa chọn cho điều đó tính cách. Nhưng tôi đồng ý, một số giải thích rõ ràng hơn sẽ phù hợp. Ngoài trường hợp thử nghiệm, đặc biệt rõ ràng, chúng tôi phải chọn một lựa chọn ngẫu nhiên 1-5 lần. Thay vì chọn một lựa chọn ngẫu nhiên lặp đi lặp lại 1-5 lần (như câu trả lời Gaia hiện tại).