Tôi có một trăm hầm, mỗi cái trong một cái khác. Mỗi hầm có một mật khẩu, bao gồm một số duy nhất.
95 43 81 89 56 89 57 67 7 45 34 34 78 88 14 40 81 23 26 78 46 8 96 11 28 3 74 6 23 89 54 37 6 99 45 1 45 87 80 12 92 20 49 72 9 92 15 76 13 3 5 32 96 87 38 87 31 10 34 8 57 73 59 33 72 95 80 84 11 4 11 11 37 71 77 91 49 21 52 48 43 11 77 52 64 3 9 21 38 65 69 84 96 78 7 71 80 78 3 97
Quá khó để ghi nhớ tất cả các mật khẩu này và không an toàn để giữ mật khẩu trên một tờ giấy. Giải pháp duy nhất tôi có thể nghĩ đến là sử dụng một chương trình với chính xác một trăm ký tự. Mật khẩu của n
kho tiền sẽ được tìm thấy bằng cách coi các n
ký tự đầu tiên của mã là một chương trình.
Do đó, ký tự đầu tiên của chương trình, nếu tự chạy như một chương trình, phải xuất ra 95
. Hai ký tự đầu tiên phải xuất ra 43
. Toàn bộ chương trình phải xuất ra 97
.
Tôi thừa nhận rằng điều này thực sự khó khăn. Vì vậy, chỉ cần làm tốt nhất của bạn. Cố gắng làm cho chương trình của bạn hoạt động với càng nhiều kho tiền càng tốt và tôi sẽ ghi nhớ mật khẩu cho phần còn lại.
Quy tắc
- Nếu có hòa, người chiến thắng là người nộp sớm nhất.
- Sơ hở tiêu chuẩn bị cấm. Điều đó bao gồm đọc từ các tập tin khác hoặc từ Internet.
- Bạn có một vài tùy chọn cho mã:
- Một chương trình đầy đủ in đúng số
- Một hàm trả về hoặc in nó
- Một biểu thức ước lượng cho nó (ví dụ như trong C,
4+3
ước tính cho7
)
- Bạn có thể giả sử môi trường REPL
- Bạn có thể sử dụng các kỹ thuật khác nhau cho mỗi giá trị của
n
. Ví dụ: bạn có thể sử dụng các ngôn ngữ khác nhau cho từng ngôn ngữn
hoặc đôi khi sử dụng một chương trình đầy đủ và đôi khi là một chức năng.
Lưu ý: Kịch bản này là hoàn toàn hư cấu. Nếu bạn gặp vấn đề tương tự, đừng đăng mật khẩu trực tuyến.
The only solution I can think of is to use a program with exactly one hundred characters.
Điều này có nghĩa là mỗi chương trình phải có chính xác 100 ký tự?