Có gì đó không ổn với bàn phím của bạn. Các Shiftphím có một tâm trí riêng của mình. Mỗi khi bạn nhập một ký tự, bạn không biết liệu nó có bị dịch chuyển hay không (mặc dù là 50-50). Ngoài các phím ký tự tiêu chuẩn, không có gì trên bàn phím là chức năng. Không có chuột hoặc phương tiện đầu vào khác.
Bằng cách nào đó bạn biết cách duy nhất để sửa chữa mọi thứ là viết một chương trình xuất ra Dear Computer, please stop giving me shift!
thiết bị xuất chuẩn. May mắn thay, IDE của bạn đang mở và bạn có khả năng chạy một chương trình, nhưng tất nhiên khi bạn gõ nó, bạn sẽ không biết nhân vật nào sẽ được thay đổi.
Trình tự bấm phím nào bạn sẽ sử dụng để viết chương trình có cơ hội làm việc tốt nhất trong lần thử đầu tiên?
Chi tiết
Bạn đang sử dụng bàn phím QWERTY tiêu chuẩn , do đó, có 50 phím ký tự bạn có thể nhấn.
Các phiên bản chưa được chỉnh sửa (chỉ 47):
`1234567890-=qwertyuiop[]\asdfghjkl;'zxcvbnm,./
Phiên bản đã thay đổi (chỉ 47):
~!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:"ZXCVBNM<>?
3 phím cuối cùng là Enter, Tabvà Space, cùng là dịch chuyển và không dịch chuyển.
Một chuỗi N của các ký tự này có 2 cách N - (số lượng khoảng trắng) có thể đã được xuất nếu bạn đã gõ chúng bằng bàn phím bị lỗi. Ví dụ, gõ A Space mcó thể đã mang lại
a m
hay A m
hay a M
hay A M
.
Viết chương trình cho các ký tự này và xem xét tất cả các kết hợp dịch chuyển có thể có 2 N - (số lượng khoảng trắng) . Càng nhiều kết hợp mà đầu ra Dear Computer, please stop giving me shift!
càng tốt. Điểm của bạn là số kết hợp làm việc (chương trình hợp lệ) chia cho tổng số kết hợp. Điểm cao nhất sẽ thắng.
Ghi chú
- Đối với các chương trình hợp lệ, in chính xác
Dear Computer, please stop giving me shift!
và không có gì khác cho thiết bị xuất chuẩn chỉ là tác dụng phụ duy nhất. - Các chương trình hợp lệ không nên lấy đầu vào.
- Các chương trình không hợp lệ có thể làm bất cứ điều gì.
- Bình luận có thể được sử dụng bất cứ nơi nào.
- Câu trả lời khoảng trắng không thể thắng vì nhận được 100% điểm là tương đối tầm thường. Bạn vẫn có thể gửi một giải pháp khoảng trắng cho vui.
- Chương trình của bạn phải dài tối đa 1024 ký tự.
Cập nhật: Thay đổi Stop giving me shift!
để Dear Computer, please stop giving me shift!
cho phép câu trả lời phức tạp hơn. Câu trả lời hiện tại có thể giữ nguyên như vậy nếu muốn.