Mô tả ngắn gọn và ngọt ngào về thử thách:
Dựa trên ETAOIN SHRDLU , thử thách của bạn là viết chương trình hoặc chức năng ngắn nhất bằng bất kỳ ngôn ngữ nào tạo ra 26 chữ cái của bảng chữ cái tiếng Anh dựa trên tần số của chúng trong đầu vào.
Đặc điểm kỹ thuật thực sự dài, khô và kỹ lưỡng:
- Chương trình / chức năng của bạn sẽ nhận được dưới dạng một chuỗi văn bản, trong đó sẽ chứa một hoặc nhiều chữ cái viết hoa và / hoặc chữ thường và cũng có thể chứa dấu câu, chữ số, ký hiệu và các ký tự không phải là chữ cái khác.
- Chương trình / chức năng phải chỉ xuất ra 26 chữ cái UPPERCASE của bảng chữ cái tiếng Anh, bao gồm cả các chữ cái không xuất hiện trong đầu vào, được sắp xếp theo thứ tự từ ít nhất đến thường xuyên nhất dựa trên số lần chúng xuất hiện trong đầu vào.
- Chỉnh sửa: Tần suất được tính không phân biệt chữ hoa chữ thường, nhưng đầu ra phải được viết hoa.
- Nếu hai hoặc nhiều chữ cái có cùng tần số, chúng có thể theo bất kỳ thứ tự nào.
Không có đầu ra khác, như khoảng trắng, được cho phép.- Chỉnh sửa 7/1/2014: Dựa trên phản hồi, tôi đang sửa đổi quy tắc này. Đầu ra duy nhất khác được phép là khoảng trắng hàng đầu và / hoặc dấu tùy chọn, chẳng hạn như một dòng mới. Không có đầu ra khác được cho phép.
- Hành vi không xác định được phép cho đầu vào không chứa bất kỳ chữ cái nào.
Người chiến thắng sẽ được chọn 7 ngày kể từ bây giờ, vì vậy hãy gõ những ngón tay đó!
Ví dụ đầu vào:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent vitae erat velit. Mauris gravida euismod libero ut tincidunt. Phasellus elit dui, consectetur et egestas in, aliquam vitae diam. Donec eget varius ante. Vestibulum cursus diam aliquet, egestas orci quis, placerat dolor. Proin vel nisi lectus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Aliquam erat volutpat. Etiam libero tortor, ornare id dui eget, posuere dignissim libero. Pellentesque commodo consequat volutpat. Integer hendrerit sapien libero, vel viverra augue facilisis sit amet. Quisque consectetur eget nisl quis dignissim. Ut lacinia pretium quam a placerat.
Morbi sed interdum risus, nec pretium lectus. Morbi imperdiet est id accumsan molestie. Duis sed fermentum nisl. Nunc vitae augue mattis, dictum lectus vel, accumsan nisl. Sed ultricies adipiscing rhoncus. Vivamus eu lacus a enim venenatis eleifend. Praesent consectetur tortor non eleifend ultricies. Mauris et odio posuere, auctor erat at, fringilla est. Proin in vestibulum erat. Maecenas congue commodo ante vel varius. Sed tempus mi ut metus gravida, nec dictum libero dapibus. Morbi quis viverra elit. Ut pharetra neque eget lacus tincidunt dictum. Fusce scelerisque viverra tellus et pretium.
Fusce varius adipiscing odio. Nulla imperdiet faucibus sem, at rhoncus ipsum adipiscing vitae. Phasellus imperdiet congue lacus et mollis. Nullam egestas mauris magna, et mollis lectus varius ut. Sed sollicitudin adipiscing dolor, vel elementum elit laoreet molestie. Aliquam nec nulla vel sem ultrices ullamcorper. Nullam nec felis magna. Duis sodales orci non justo aliquam tempus. Integer mi diam, tempor sed vulputate et, varius et nunc. Vestibulum sodales ipsum id mi pharetra, ut convallis mi accumsan. Sed dictum volutpat vestibulum.
Quisque ac dolor sagittis, aliquam libero at, euismod enim. Nulla ullamcorper posuere nulla vitae varius. Nam at dolor non libero elementum pellentesque in in lorem. Fusce porttitor turpis in quam placerat varius. Donec lorem orci, condimentum eu sapien sit amet, aliquet commodo magna. Quisque sed lectus sit amet arcu euismod accumsan et non nunc. Phasellus placerat congue metus, feugiat posuere leo dictum quis. Sed ultricies feugiat eros dignissim bibendum.
Mauris scelerisque consectetur libero eget varius. Aenean neque nunc, ullamcorper vitae orci in, auctor ornare sapien. Nam lacinia molestie imperdiet. Nam vitae mattis nibh. Vestibulum consequat tellus ac nisi sagittis pulvinar. Nullam mollis ornare quam, et venenatis leo porttitor sit amet. Nulla urna neque, dignissim non orci ut, volutpat ultrices erat. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Pellentesque vestibulum tellus nec eros faucibus porta.
Ví dụ đầu ra:
EITUSALNROMCDPVGQBFHJKWXYZ
Lưu ý: có một ràng buộc 5 cách giữa KWXYZ
cho đầu vào đó.
Biên tập:
Cuộc thi đã kết thúc! Cảm ơn tất cả những người tham gia. Và bây giờ cho người chiến thắng (s!): Cả hai câu trả lời Pyth của Dennis 'CJam và isaacg đều xuất hiện với 19 ký tự. (Xin lỗi, nhưng tôi sẽ không chấp nhận một trong hai câu trả lời vì tôi nghĩ nó sẽ không công bằng cho người khác.) Chỉnh sửa: Nhận lời khuyên của Dennis, tôi sẽ đánh dấu câu trả lời của anh ấy là chấp nhận vì anh ấy là người đầu tiên đạt 19 ký tự. Những đề cập đáng trân trọng dành cho câu trả lời Golfscript ở vị trí thứ ba của Ilmari Karonen ở 22 ký tự cũng như câu trả lời Python 75-char của câu lạc bộ được nhiều người ủng hộ nhất. Một lần nữa, cảm ơn mọi người đã tham gia!