Là lập trình viên, tất cả chúng ta đều biết câu nói: "Bạn có thể có nó nhanh và tốt, nhưng nó sẽ không rẻ, bạn có thể có nó rẻ và tốt, nhưng nó sẽ không nhanh, hoặc bạn có thể có nó nhanh và rẻ , nhưng nó sẽ không tốt đâu. "
Đối với thử thách này, bạn đang triển khai một công cụ cấu hình tưởng tượng cho các dịch vụ lập trình tùy chỉnh của mình. Bạn nên kết xuất một bộ ba hộp kiểm, với tiêu đề "CHỌN BẤT CỨ HAI":
SELECT ANY TWO
☐ FAST
☐ CHEAP
☐ GOOD
Khi hai mục đã được chọn, mục thứ ba phải bị vô hiệu hóa. Khi bỏ chọn một trong hai mục đã chọn, tất cả các tùy chọn phải được bật lại. Nói cách khác, nếu không hoặc một mục nào được chọn, tất cả vẫn được bật, nhưng nếu hai mục được chọn, mục thứ ba phải bị vô hiệu hóa.
Không có điều khiển đặc biệt được phép. Các hộp kiểm phải là hộp kiểm tiêu chuẩn trong ngôn ngữ bạn chọn. Ví dụ: không sử dụng điều khiển "CheckBoxList", nếu ngôn ngữ của bạn có. Tôi đang tưởng tượng hầu hết các mục sẽ là HTML / jQuery, nhưng đó không phải là quy tắc. Đây là mã golf, tìm kiếm mục nhập ngắn nhất.
NGƯỜI CHIẾN THẮNG
Tôi sẽ chia nó thành các loại. Có một số người chiến thắng rõ ràng:
jQuery: nderscore, Mr. Tenacity Dưới 100b khi bạn loại trừ "tài nguyên" văn bản. Đề cập đến danh dự cũng nên đến Matt để giới thiệu các khái niệm jQuery mà nhiều người lấy cảm hứng từ đó.
Dyalog APL: marinus, còn gọi là ông Unicode Làm thế nào để bạn gõ tất cả những thứ đó? Tôi có thể thấy lý do tại sao bạn muốn viết chương trình ngắn.
PHP: SuperScript Tôi tin rằng đây là mục ngắn nhất thực sự vô hiệu hóa thay vì bỏ chọn tùy chọn thứ ba, tuân theo sự diễn giải chặt chẽ nhất của các quy tắc.